틀린 코드
class Solution {
public int solution(int n) {
int answer = n;
for(int i = 1; i <= n; i++){
if((i % 3 == 0) || String.valueOf(i).contains("3")){
answer++;
System.out.println(i);
}
}
return answer;
}
}
입력값 〉 10
기댓값 〉 16
실행 결과 〉 실행한 결괏값 13이 기댓값 16과 다릅니다.
출력 〉 3
6
9
- 출력에서 생각도 못한 것이 있었다. 3이 들어간 경우 반복문을 돌리는 범위도 1씩 증가해야했던건데 이 부분을 생각 못하고 구간을 정해 둔 탓에 발생한 오류 였다.
맞은 코드
class Solution {
public int solution(int n) {
int answer = n;
for(int i = 1; i <= answer; i++){
if((i % 3 == 0) || String.valueOf(i).contains("3")){
answer++;
}
}
return answer;
}
}
https://school.programmers.co.kr/learn/courses/30/lessons/120871#
'Algorithm' 카테고리의 다른 글
이진 탐색 (0) | 2023.08.12 |
---|---|
알고리즘 문법 정리 (0) | 2023.02.13 |
2차원으로 만들기.java (0) | 2023.02.12 |
가장 큰 수 찾기 (0) | 2023.01.24 |
공간 복잡도 (0) | 2022.08.05 |