JAVA | [λ°±μ€] 곡 λ£κΈ° (10810λ²)
π§ 곡 λ£κΈ°
π λ¬Έμ μ€λͺ
λνμ΄λ λ°κ΅¬λλ₯Ό μ΄ Nκ° κ°μ§κ³ μκ³ , κ°κ°μ λ°κ΅¬λμλ 1λ²λΆν° Nλ²κΉμ§ λ²νΈκ° λ§€κ²¨μ Έ μλ€. λ, 1λ²λΆν° Nλ²κΉμ§ λ²νΈκ° μ νμλ 곡μ λ§€μ° λ§μ΄ κ°μ§κ³ μλ€. κ°μ₯ μ²μ λ°κ΅¬λμλ κ³΅μ΄ λ€μ΄μμ§ μμΌλ©°, λ°κ΅¬λμλ 곡μ 1κ°λ§ λ£μ μ μλ€.
λνμ΄λ μμΌλ‘ Mλ² κ³΅μ λ£μΌλ €κ³ νλ€. λνμ΄λ ν λ² κ³΅μ λ£μ λ, 곡μ λ£μ λ°κ΅¬λ λ²μλ₯Ό μ νκ³ , μ ν λ°κ΅¬λμ λͺ¨λ κ°μ λ²νΈκ° μ νμλ 곡μ λ£λλ€. λ§μ½, λ°κ΅¬λμ κ³΅μ΄ μ΄λ―Έ μλ κ²½μ°μλ λ€μ΄μλ 곡μ λΉΌκ³ , μλ‘ κ³΅μ λ£λλ€. 곡μ λ£μ λ°κ΅¬λλ μ°μλμ΄ μμ΄μΌ νλ€.
곡μ μ΄λ»κ² λ£μμ§κ° μ£Όμ΄μ‘μ λ, Mλ² κ³΅μ λ£μ μ΄νμ κ° λ°κ΅¬λμ μ΄λ€ κ³΅μ΄ λ€μ΄ μλμ§ κ΅¬νλ νλ‘κ·Έλ¨μ μμ±νμμ€.
β¨οΈ μ λ ₯
첫째 μ€μ N (1 ≤ N ≤ 100)κ³Ό M (1 ≤ M ≤ 100)μ΄ μ£Όμ΄μ§λ€.
λμ§Έ μ€λΆν° Mκ°μ μ€μ κ±Έμ³μ 곡μ λ£λ λ°©λ²μ΄ μ£Όμ΄μ§λ€. κ° λ°©λ²μ μΈ μ μ i j kλ‘ μ΄λ£¨μ΄μ Έ μμΌλ©°, iλ² λ°κ΅¬λλΆν° jλ² λ°κ΅¬λκΉμ§μ kλ² λ²νΈκ° μ νμ Έ μλ 곡μ λ£λλ€λ λ»μ΄λ€. μλ₯Ό λ€μ΄, 2 5 6μ 2λ² λ°κ΅¬λλΆν° 5λ² λ°κ΅¬λκΉμ§μ 6λ² κ³΅μ λ£λλ€λ λ»μ΄λ€. (1 ≤ i ≤ j ≤ N, 1 ≤ k ≤ N)
λνμ΄λ μ λ ₯μΌλ‘ μ£Όμ΄μ§ μμλλ‘ κ³΅μ λ£λλ€.
π¨οΈ μΆλ ₯
1λ² λ°κ΅¬λλΆν° Nλ² λ°κ΅¬λμ λ€μ΄μλ 곡μ λ²νΈλ₯Ό 곡백μΌλ‘ ꡬλΆν΄ μΆλ ₯νλ€. κ³΅μ΄ λ€μ΄μμ§ μμ λ°κ΅¬λλ 0μ μΆλ ₯νλ€.
π λ¬Έμ νμ΄
1. Mκ³Ό Nμ μ λ ₯λ°κ³ ν¬κΈ° Nμ λ°°μ΄μ λ§λ λ€.
2. i, j, kλ₯Ό μ λ ₯ λ°μ ν forλ¬Έμ ν΅ν΄ λ°°μ΄μ i-1λΆν° j-1κΉμ§ kλ₯Ό μ λ ₯νλ€.
3. λ°°μ΄μ μΆλ ₯νλ€.
μ΄ λ¬Έμ λ μ μ νλ€κ° μμΈμ§ μΆλ ₯μ΄ λ€λ₯΄κ² λμμ μλ¬Έμ λͺ¨λ₯΄κ² λ λ¬Έμ μμλ€. μνκΈ°κ°λ λ€κ°μ€λ©΄μ ν΄κ²°μ λͺ»νκ³ κ·Έλλ‘ λμλλ°, μκ³ λ³΄λ λ§μ§λ§ μΆλ ₯ forλ¬Έμμ μλμ²λΌ μλͺ» μ μλ€ ....
for (int k : numarr) {
System.out.print(numarr[k] + " "); // (k + " ")
}
κΈνκ² λ¬Έμ λ₯Ό λ§μ΄ νκ³ μΆμ΄μ μ μ§λ₯Έ λ°λ³΄ κ°μ μ€μ .. γ γ
π₯οΈ μμ± μ½λ
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Arrays;
import java.util.StringTokenizer;
public class Main {
public static void main(String args[]) throws IOException {
BufferedReader bf = new BufferedReader(new InputStreamReader(System.in));
StringTokenizer st = new StringTokenizer(bf.readLine()," ");
int n = Integer.parseInt(st.nextToken());
int m = Integer.parseInt(st.nextToken());
int[] numarr = new int[n];
for (int i = 0; i < m; i++) {
st = new StringTokenizer(bf.readLine()," ");
int a = Integer.parseInt(st.nextToken());
int b = Integer.parseInt(st.nextToken());
int c = Integer.parseInt(st.nextToken());
for (int j = a-1; j < b; j++) {
numarr[j] = c;
}
}
for (int k : numarr) {
System.out.print(k + " ");
}
}
}