โฐ๋ฌธ์
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 ํด์ผ ํฉ๋๋ค.
๐กํ์ด
โญ์ ์ถ ์ฝ๋
import java.util.Arrays;
class Solution {
public int solution(int[] numbers) {
String num = "0123456789";
int answer = 0;
String str = Arrays.toString(numbers);
for(int i=0; i<10; i++){
if(str.indexOf(num.charAt(i)) == -1){
answer += (num.charAt(i) - '0');
}
}
return answer;
}
}
๐ง ์ฝ๋ ํด์
1. 0 ~ 9๊น์ง๋ฅผ ๋ฌธ์์ด๋ก ์ ์ฅํ๋ค. (num)
2. numbers๋ฅผ ๋ฌธ์์ด๋ก ๋ณ๊ฒฝํ๋ค. (String str = Arrays.toString(numbers);)
-> ์ดํ indexOf() ๋ฉ์๋๋ฅผ ์ฌ์ฉํ๊ธฐ ์ํด
3. str์ num์ ๊ฐ ์๋ฆฌ์ ์ผ์นํ๋ ๋ฌธ์๊ฐ ํฌํจ๋์ด์์ง ์๋๋ค๋ฉด ( if(str.indexOf(num.charAt(i)) == -1) )
answer์ ํฌํจ๋์ง ์์ ๋ฌธ์๋ฅผ ๋ํด์ค๋ค.
(** ์ด๋ num.charAt(i)๋ ASCII ์ฝ๋์ ๊ฐ์ผ๋ก ์ถ๋ ฅ๋๋ฏ๋ก ๋ฌธ์ '0'์ ๋นผ์ค๋ค.
ex) num.charAt(5) - '0'; --> 53 - 48 = 5 )
'๐ Algorithm > ํ๋ก๊ทธ๋๋จธ์ค' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Programmers] ๋ฌธ์์ด ์ ๋ ฌํ๊ธฐ(2)(์๋ฐ) (0) | 2023.04.07 |
---|---|
[Programmers] ์์ด๊ฐ ์ซ์ด์(์๋ฐ) (0) | 2023.04.05 |
[Programmers] ์ค๋ณต๋ ๋ฌธ์ ์ ๊ฑฐ(์๋ฐ) (0) | 2023.04.01 |
[Programmers] ์จ์ด์๋ ์ซ์์ ๋ง์ (1)(์๋ฐ) (0) | 2023.04.01 |
[Programmers] ์์ธ์๋ถํด(์๋ฐ) (0) | 2023.04.01 |