백준 1436

Jb·2024년 3월 15일

import java.io.*;

public class Main {
    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        int input = Integer.parseInt(br.readLine());
        int number = 666;
        int count = 1;

        while (input != count) {
            number++;
            if (String.valueOf(number).contains("666")) {
                count++;
            }
        }
        System.out.println(number);
        }
}

로직구성

1.숫자를 666부터 시작해서 1씩 증가시키면서 검사합니다.
2.각 숫자를 문자열로 변환하고, "666"이 포함되어 있는지 확인합니다.
3."666"이 포함된 숫자를 찾을 때마다 카운트를 증가시킵니다.
4.카운트가 사용자가 입력한 N과 같아지면, 그 숫자를 출력하고 프로그램을 종료합니다.

부족한점

문제를 이해하는데 1시간이 걸렸다.
구현할때 정수형을 문자열로 바꾸는 법이 익숙치 않았다.(String.valueOf(int))
contains메서드를 처음 써봤다. String.valueOf(int).contains(String)

0개의 댓글