https://programmers.co.kr/learn/courses/30/lessons/12931
방법 1
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
import java.util.*;
public class Solution {
public int solution(int n) {
String strN = n + "";
int answer = 0;
// '각 자리의 숫자'를 구해서 계산
for (int i = 0; i < strN.length(); i++) {
answer+= (strN.charAt(i) - '0');
}
return answer;
}
}
Colored by Color Scripter
|
방법 2
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
import java.util.*;
public class Solution {
public int solution(int n) {
int answer = 0;
// 일의 자리 값을 더한 후 나누기 10
while (n != 0) {
answer += n % 10;
n /= 10;
}
return answer;
}
}
|
방법 2가 훨씬 빠르다
String으로의 형변환이 속도를 많이 잡아먹는 것 같다
'Algorithm > 프로그래머스' 카테고리의 다른 글
[프로그래머스]연습문제 : 정수 내림차순으로 배치하기 (level 1) (0) | 2019.11.07 |
---|---|
[프로그래머스]연습문제 : 자연수 뒤집어 배열로 만들기 (level 1) (0) | 2019.11.07 |
[프로그래머스]연습문제 : 이상한 문자 만들기 (level 1) (0) | 2019.11.07 |
[프로그래머스]연습문제 : 약수의 합 (level 1) (0) | 2019.11.07 |
[프로그래머스]연습문제 : 시저 암호 (level 1) (0) | 2019.11.06 |
댓글