โค๏ธ Problem
๋๋ณด๊ธฐ
- ๋ฌธ์
๋ฌธ์์ด my_string์ด ๋งค๊ฐ๋ณ์๋ก ์ฃผ์ด์ง๋๋ค. my_string์์ ๋ชจ๋ ์์ฐ์๋ค์ ํฉ์ returnํ๋๋ก solution ํจ์๋ฅผ ์์ฑํด์ฃผ์ธ์.
- ์ ํ์ฌํญ
- 1 ≤ my_string์ ๊ธธ์ด ≤ 1,000
- my_string์ ์๋ฌธ์, ๋๋ฌธ์ ๊ทธ๋ฆฌ๊ณ ํ์๋ฆฌ ์์ฐ์๋ก๋ง ๊ตฌ์ฑ๋์ด์์ต๋๋ค.
- ์ ์ถ๋ ฅ ์ & ์ค๋ช
no | my_string | result |
1 | "aAb1B2cC34oOp" | 10 |
2 | "1a2b3c4d123" | 16 |
- "aAb1B2cC34oOp"์์ ํ์๋ฆฌ ์์ฐ์๋ 1, 2, 3, 4 ์ ๋๋ค. ๋ฐ๋ผ์ 1 + 2 + 3 + 4 = 10 ์ returnํฉ๋๋ค.
- "1a2b3c4d123Z"์์ ํ์๋ฆฌ ์์ฐ์๋ 1, 2, 3, 4, 1, 2, 3 ์ ๋๋ค. ๋ฐ๋ผ์ 1 + 2 + 3 + 4 + 1 + 2 + 3 = 16 ์ returnํฉ๋๋ค.
๐ Solution
ํ์ด
class Solution {
public long solution(String my_string) {
int sum = 0;
String[] transArr = my_string.replaceAll("[a-zA-Z]", "").split("");
for (int i=0; i<transArr.length; i++) {
sum += Integer.parseInt(transArr[i]);
}
return sum;
}
}
ํ๊ท ์ฒ๋ฆฌ์๋ = 0.35ms
๐ Comment
๋งจ ์ฒ์์ ์์ฑํ ์ฝ๋๋ ๋ค์๊ณผ ๊ฐ์๋ฐ, ํ ์คํธ๋ ํต๊ณผํ๋๋ฐ ์ ์ถ์ ํ๋ ๋ฐํ์ ์๋ฌ๊ฐ ๋ฌ๋ค.
class Solution {
public long solution(String my_string) {
int sum = 0;
int trans = Integer.parseInt(my_string.replaceAll("[a-zA-Z]", ""));
while(trans%10>0) {
sum += trans%10;
trans = trans/10;
}
return sum;
}
}
์์ธ์ด ๋ฌด์์ธ์ง ๊ณฐ๊ณฐํ ์๊ฐํด๋ดค๋๋ฐ, ์ ํ ์ฌํญ์ธ "1 ≤ my_string์ ๊ธธ์ด ≤ 1,000" ๋๋ฌธ์ธ ๊ฒ ๊ฐ์๋ค.
๋ง์ฝ my_string์ ๊ธธ์ด๊ฐ 1000์๋ผ๊ณ ํ์ ๋ ๊ตฌ์ฑ์์๊ฐ ๋ชจ๋ ์ซ์๋ผ๊ณ ๊ฐ์ ํ๋ค๋ฉด int trans๋ก ๋ณํ์ด ๋ถ๊ฐ๋ฅํ๊ธฐ ๋๋ฌธ์ด๋ค.
๊ทธ๋์ String my_string์์ ์ซ์๋ง ๋จ๊ฒจ๋๊ณ ํด๋น ์์๋ฅผ ํ๋์ฉ String[]๋ก ๋ณํ์ ํ ๋ค, ๋ฐ๋ณต๋ฌธ์ผ๋ก ๋ฐฐ์ด ์์๋ฅผ ๋ชจ๋ ๋ํ๋ ๋ฐฉ์์ ์ฌ์ฉํ๊ฒ ๋์๋ค.
์ด๋ ๊ฒ ์์ฑ์ ํ๋ ๋ฐํ์ ์๋ฌ๊ฐ ๋์ง ์์๋ค.
๐ค Concept
Java Runtime Error
- ํ๋ก๊ทธ๋จ ์คํ ์ค ๋ฐ์ํ ์ค๋ฅ
- ํ๋ก๊ทธ๋จ์ด ์ปดํ์ผ์ด ๋ ํ์ ๋ฐ์
- ํ๋ก๊ทธ๋จ์ด ์คํ ์ค์ ์๋ชป๋ ๋ฐ์ดํฐ๋ฅผ ๊ฐ์ง๊ฒ ๋์ด ์๋ชป๋ ์ฒ๋ฆฌ๋ฅผ ํ ๋ ๋ฐ์
- ์์ธ์ ๋ค์ํ๋ค
- ์ฃผ์ ์์
- ๋ฌดํ ๋ฃจํ
- 0์ผ๋ก ๊ฐ์ ๋๋๊ธฐ
- null๊ฐ์ด ๋ค์ด๊ฐ ๊ฒฝ์ฐ (NullPointerException)
- ์ด๋ฒ ์ฌ๋ก์ ๊ฒฝ์ฐ int๋ก ๋ณํ์ด ๋ถ๊ฐ๋ฅํ ๊ธธ์ด์ ๊ฐ์ด ๋ค์ด๊ฐ Runtime Error ์ ๋ฐ
cf) Java Compile Error
- ์์ค ์ฝ๋๋ฅผ ์ปดํ์ผํ๋ ์ค์ ๋ฐ์ํ ์ค๋ฅ
- ์ฃผ๋ก ๋ฌธ๋ฒ ์์ ์ค๋ฅ (syntax)
- ์๋ฌ ๋ฐ์ ๋ถ๋ถ์ ํ๋ก๊ทธ๋จ์์ ์ ์ ์๋ค
- ์ฃผ์ ์์
- syntax ์ค๋ฅ (;๋๋ฝ, ๊ดํธ๋๋ฝ ๋ฑ)
- import ๋๋ฝ
'Programmers lv-0' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
๊ฐ๊น์ด ์ - Java [ํ๋ก๊ทธ๋๋จธ์ค ์ ๋ฌธ] (0) | 2022.11.28 |
---|---|
์ค๋ณต๋ ๋ฌธ์ ์ ๊ฑฐ - Java [ํ๋ก๊ทธ๋๋จธ์ค ์ ๋ฌธ] (0) | 2022.11.27 |
์ปจํธ๋กค ์ ํธ - Java [ํ๋ก๊ทธ๋๋จธ์ค ์ ๋ฌธ] (0) | 2022.11.27 |
์์ธ์๋ถํด - Java [ํ๋ก๊ทธ๋๋จธ์ค ์ ๋ฌธ] (0) | 2022.11.27 |
๊ตฌ์ฌ์ ๋๋๋ ๊ฒฝ์ฐ์ ์ - Java [ํ๋ก๊ทธ๋๋จธ์ค ์ ๋ฌธ] (0) | 2022.11.27 |
์ง๋ฃ์์ ์ ํ๊ธฐ - Java [ํ๋ก๊ทธ๋๋จธ์ค ์ ๋ฌธ] (0) | 2022.11.27 |
๋๊ธ