๐งฉ ํ๋ก๊ทธ๋๋จธ์ค/๐ต ์๊ณ ๋ฆฌ์ฆ ํ์ด(Java)
ํ๋ก๊ทธ๋๋จธ์ค_์๋ ์ซ์ ๋ํ๊ธฐ
carrot0911
2024. 11. 14. 10:00
๋ฌธ์ ์ค๋ช
https://school.programmers.co.kr/learn/courses/30/lessons/86051
ํ๋ก๊ทธ๋๋จธ์ค
SW๊ฐ๋ฐ์๋ฅผ ์ํ ํ๊ฐ, ๊ต์ก, ์ฑ์ฉ๊น์ง Total Solution์ ์ ๊ณตํ๋ ๊ฐ๋ฐ์ ์ฑ์ฅ์ ์ํ ๋ฒ ์ด์ค์บ ํ
programmers.co.kr
0๋ถํฐ 9๊น์ง์ ์ซ์ ์ค ์ผ๋ถ๊ฐ ๋ค์ด์๋ ์ ์ ๋ฐฐ์ด numbers๊ฐ ๋งค๊ฐ๋ณ์๋ก ์ฃผ์ด์ง๋๋ค. numbers์์ ์ฐพ์ ์ ์๋ 0๋ถํฐ 9๊น์ง์ ์ซ์๋ฅผ ๋ชจ๋ ์ฐพ์ ๋ํ ์๋ฅผ return ํ๋๋ก solution ํจ์๋ฅผ ์์ฑํด์ฃผ์ธ์.
์ ํ ์ฌํญ
- 1 ≤ numbers์ ๊ธธ์ด ≤ 9
- 0 ≤ numbers์ ๋ชจ๋ ์์ ≤ 9
- numbers์ ๋ชจ๋ ์์๋ ์๋ก ๋ค๋ฆ ๋๋ค.
์ ์ถ๋ ฅ ์
numbers | result |
[1, 2, 3, 4, 6, 7, 8, 0] | 14 |
[5, 8, 4, 0, 6, 7, 9] | 6 |
์ ์ถ๋ ฅ ์ ์ค๋ช
์ ์ถ๋ ฅ ์ #1
- 5, 9๊ฐ numbers์ ์์ผ๋ฏ๋ก 5 + 9 = 14๋ฅผ returnํด์ผ ํฉ๋๋ค.
์ ์ถ๋ ฅ ์ #2
- 1, 2, 3์ด numbers์ ์์ผ๋ฏ๋ก, 1 + 2 + 3 = 6์ returnํด์ผ ํฉ๋๋ค.
๋ด๊ฐ ์์ฑํ ์ฝ๋
class Solution {
public int solution(int[] numbers) {
int answer = 0;
int[] check = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0,};
for (int num : numbers) {
check[num] = 1;
}
for (int i = 0; i < 10; i++) {
if (check[i] == 0) {
answer += i;
}
}
return answer;
}
}
์ฝ๋ ์ค๋ช
- int[ ] check = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0} : 0 ~ 9๊น์ง ์ซ์์ ์กด์ฌ๋ฅผ ์ฒดํฌํ๊ธฐ ์ํ ๋ฐฐ์ด check๋ฅผ ์์ฑํ๋ค.
- for (int num : numbers) { } : ๋ฐ๋ณต๋ฌธ์ ์ฌ์ฉํด์ numbers์ ๊ฐ๋ค์ ํ๋์ฉ ๊ฐ์ ธ์จ๋ค.
- check[num] = 1 : ๋ฐฐ์ด check์ num ์ธ๋ฑ์ค๋ฅผ 1๋ก ๋ฐ๊ฟ์ค๋ค. 1๋ก ๋ฐ๋ ์ธ๋ฑ์ค๋ค์ ์ซ์๊ฐ ์์์ ์๋ฏธํ๋ค.
- for (int i = 0; i < 10; i++) { } : ๋ฐ๋ณต๋ฌธ์ ์ฌ์ฉํด์ ๋ฐฐ์ด check๋ฅผ ํ์ธํ๋ค.
- if (check[i] == 0) {answer += i} : ์กฐ๊ฑด๋ฌธ์ ์ฌ์ฉํด์ ๋ฐฐ์ด check์ i๋ฒ์งธ ์ธ๋ฑ์ค ๊ฐ์ด 0์ด๋ผ๋ฉด ๋ณ์ answer์ i ๊ฐ์ ๋ํด์ค๋ค. i๋ฒ์งธ ์ธ๋ฑ์ค ๊ฐ์ด 0์ด๋ผ๋ฉด ์ซ์๊ฐ ๋ฐฐ์ด numbers์ ์กด์ฌํ์ง ์์์ ์๋ฏธํ๋ค.