[๋ฌธ์ ๋งํฌ] ๐ https://www.acmicpc.net/problem/10810
์ค๋ช
๋ฐ๊ตฌ๋ ๊ฐ์ N๊ฐ๊ฐ ์๊ณ , N๊ฐ์ ๋ฐ๊ตฌ๋์ M๋ฒ์ ๊ณต์ ๋ฃ๋๋ค.
์ฒ์์ ๋ชจ๋ ๋น ๋ฐ๊ตฌ๋์ด๊ณ , ๋ฐ๊ตฌ๋์๋ 1๊ฐ์ ๊ณต๋ง ๋ฃ์ ์ ์๋ค.
์ ๋ ฅ์ด ๋ง์ผ 1 2 3 ์ด๋ผ๊ณ ํ ๋, 1๋ฒ์งธ ๋ฐ๊ตฌ๋๋ถํฐ 2๋ฒ์งธ ๋ฐ๊ตฌ๋๊น์ง 3๋ฒ ๊ณต์ ๋ฃ๋๋ค.
๋ค์ ์ ๋ ฅ์ด 3 4 4 ๋ผ๊ณ ํ ๋, 3๋ฒ์งธ ๋ฐ๊ตฌ๋๋ถํฐ 4๋ฒ์งธ ๋ฐ๊ตฌ๋๊น์ง 4๋ฒ ๊ณต์ ๋ฃ๋๋ค.
๋ง์ผ ๋ฐ๊ตฌ๋์ ๊ณต์ด ๋ค์ด๊ฐ ์์ผ๋ฉด ๊ณต์ ๋นผ๊ณ ์๋ก ๊ณต์ ๋ฃ๋๋ค.
๊ทธ๋์ N๊ฐ์ ๋ฐ๊ตฌ๋์ ๋ช ๋ฒ ๊ณต์ด ๋ค์ด๊ฐ ์๋์ง ๋ชจ๋ ์ถ๋ ฅํ๋ฉด ๋๋ค. ๋น ๋ฐ๊ตฌ๋๋ 0์ ์ถ๋ ฅํ๋ค.
ํ์ด
๋ฐ๊ตฌ๋์ ๊ณต์ ๋ฃ๋ ๋ฐฉ๋ฒ์ ๋ค์๊ณผ ๊ฐ๋ค.
for (int k = mInt[0] - 1; k < mInt[1]; k++) {
bowl[k] = mInt[2];
}
mInt ๋ฐฐ์ด์๋ i, j, k๊ฐ ๋ค์ด์๋ค. i ๋ฒ์งธ๋ถํฐ j ๋ฒ์งธ๊น์ง k ๋ฒ ๊ณต์ ๋ฃ์ด์ผ ํ๋ค.
๋ฐ๋ผ์ k์ ์ด๊ธฐ๊ฐ์ mInt์ ์ฒซ ๋ฒ์งธ ์ธ๋ฑ์ค์ด๋ค. - 1์ ํด์ค ์ด์ ๋ ๋ฐฐ์ด์ ์ธ๋ฑ์ค๊ฐ 0๋ถํฐ ์์ํ๋ฏ๋ก - 1์ ํด์ฃผ์๋ค.
๊ทธ๋ฆฌ๊ณ mInt์ ๋ ๋ฒ์งธ ์ธ๋ฑ์ค๊น์ง ๋ฐ๊ตฌ๋์ ๊ฐ์ ๋ฃ์ด์ฃผ๋ฉฐ ๋ฐ๋ณตํ๋ค. ๋ฐ๊ตฌ๋์๋ mInt์ ์ธ ๋ฒ์งธ ์ธ๋ฑ์ค์ ๊ฐ์ ๋ฃ์ด์ฃผ๋ฉด ๋๋ค.
Solution
import java.io.*;
public class Main_10810 {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String[] nm = br.readLine().split(" ");
int n = Integer.parseInt(nm[0]); //๋ฐ๊ตฌ๋ ๊ฐ์
int m = Integer.parseInt(nm[1]); //๋ฐ๊ตฌ๋์ ๊ณต์ ๋ช ๋ฒ ๋ฃ์์ง
int[] bowl = new int[n]; //๋ฐ๊ตฌ๋ ์์ฑ
int[] mInt = new int[3]; //๋ฌธ์์ด์ ์ ์ํ์ผ๋ก ๋ณํํ๊ณ ๋ด์ ๊ทธ๋ฆ
for (int i = 0; i < m; i++) {
String[] mStr = br.readLine().split(" ");
for (int j = 0; j < 3; j++) { //์ ์ํ์ผ๋ก ๋ณํ
mInt[j] = Integer.parseInt(mStr[j]);
}
//๊ณ์ฐ
for (int k = mInt[0] - 1; k < mInt[1]; k++) {
bowl[k] = mInt[2]; //๋ฐ๊ตฌ๋์ ๊ณต ๋ฃ๊ธฐ
}
}
for (int i : bowl) {
System.out.printf("%d ", i);
}
}
}
๐ฉ๐ป ํ๊ณ
๊ฐ๋จํ ๊ตฌํ ๋ฌธ์ ๋ก ์ด๋ฒ ๋ฌธ์ ๋ ์ฝ๊ฒ ํ ์ ์์๋ค.
TIL - ๋ฐฐ์ด์ ๋ชจ๋ ๊ฐ์ ์ด๊ธฐํ
Arrays.fill(bowl, 0);
๋น ๋ฐ๊ตฌ๋๋ 0์ผ๋ก ์ถ๋ ฅํด์ผ ํด์ ๋ฐฐ์ด์ ๊ฐ์ 0์ผ๋ก ์ด๊ธฐํ ํด์ผ ํ๋ ์ถ์๋๋ฐ ์ ํด๋ ๋์๋ค. ๋ฐฐ์ด์ ์ ์ธํ๊ณ ๊ฐ์ ๋ฃ์ง ์์ผ๋ฉด null์ด ๋ค์ด์์ ์ค ์์๋๋ฐ ์๋์ผ๋ก 0์ผ๋ก ์ด๊ธฐํ๊ฐ ๋๋๋ณด๋ค. ๊ทธ๋๋ ์ด๋ฒ์ ๋ฐฐ์ด์ ํ๋ฒ์ ์ด๊ธฐํ ์ํค๋ ๋ฉ์๋๋ฅผ ์๊ฒ ๋๋ค.
'๐งฉ Algorithm > [BOJ] Bronze' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
| BOJ 3009 : ๋ค ๋ฒ์งธ ์ (Java/๊ตฌํ/Bronze 3) (0) | 2024.10.14 |
|---|---|
| BOJ 5086 : ๋ฐฐ์์ ์ฝ์ (Java/์ํ/Bronze 3) (0) | 2024.10.14 |
| BOJ 1598 : ๊ผฌ๋ฆฌ๋ฅผ ๋ฌด๋ ์ซ์ ๋์ด (Java/์ํ/Bronze 3) (0) | 2024.10.12 |
| BOJ 1284 : ์ง ์ฃผ์ (Java/๊ตฌํ/Bronze 3) (0) | 2024.10.12 |
| BOJ 1267 : ํธ๋ํฐ ์๊ธ (Java/๊ตฌํ/Bronze 3) (2) | 2024.10.12 |