728x90
반응형
문제
정답 코드
import java.util.*;
public class Solution {
public int solution(int n) {
int answer = 0;
//
while(n > 0){
answer += n%10;
n /= 10;
}
//
return answer;
}
}
이제부터 주석 사이에 있는 코드들이 직접 작성한 코드라고 봐주시면 됩니다.
이 문제는 살짝 헤맸던(?) 문제입니다.
첫 시도는 아래와 같습니다.
import java.util.*;
public class Solution {
public int solution(int n) {
int answer = 0;
//
int i = 10;
while(true){
if(n <= i)
break;
else{
answer += n%i;
i *= 10;
System.out.println(answer);
}
}
//
return answer;
}
}
테스트케이스 둘 다 틀리다고 나오더라고요.
그래서 출력을 통해 의도대로 되고 있나 확인해봤는데
테스트케이스1도 잘 실행이 됐다면 출력문이 3 5 6 순서대로 나와야 하는데 3 26이 나오고
테스트케이스2는 7 15 24가 아니라 7 94가 나오더라고요..
노트에 i가 변할 때마다 결과가 어떻게 될지 써보니까 틀릴 만 했죠ㅎㅎ
이 의도대로 올바른 결과값을 낼 수는 없을까 머리 굴려봤는데 도저히 생각이 안나서
정답코드처럼 나머지연산하고 나눗셈연산으로 더 필요없는 자릿수값 날리고를 반복했습니다.
728x90
반응형
'Computer Science (CS) > 알고리즘' 카테고리의 다른 글
[프로그래머스/Java] 자연수 뒤집어 배열로 만들기 (2) | 2023.03.26 |
---|---|
[프로그래머스/Java] x만큼 간격이 있는 n개의 숫자 (0) | 2023.03.26 |
[프로그래머스/Java] 짝수와 홀수 (0) | 2023.03.24 |
[프로그래머스/Java] 평균 구하기 (0) | 2023.03.24 |
[프로그래머스/Java] 약수의 합 (0) | 2023.03.24 |