본문 바로가기

Coding Test/Step12. 브루스 포트

[Java] 5단계. 영화감속 숌 [1436번]

https://www.acmicpc.net/problem/1436

 

  • 예제 입력1
2
  • 예제 출력1
1666
  • 예제 입력2
3
  • 예제 출력2
2666

 

  • 예제 입력3
6
  • 예제 출력3
5666
  • 예제 입력4
187
  • 예제 출력4
66666
  • 예제 입력5
500
  • 예제 출력5
166699

 


 

  • 문제 접근
    • 어떤 수든 간에 666이 들어가면 됨
      • Ex) 10666, 16661 등  
    • 횟수가 정해지지 않아 while문 사용
  • 문제 해결
    • 횟수가 정해지지 않아 while문으로 num을 1씩 증가 시키면서 검증
      • target = 1
      • num = 666
    • num을 문자열로 변환 → 666 포함 시 target++
    • target == N → 반복문 종료 → num 출력
  • 슈도 코드
N (몇 번째 값을 찾을지 저장)
target 1 저장
num 666 저장
while(target != N){
	num 1증가
	if(num -> 문자열 변환 -> 666 포함 ?){
		target 1증가
	}
}
num 출력
  • 코딩하기
public static void main(String[] args) throws Exception{
    Scanner scan = new Scanner(System.in);
    int N = scan.nextInt();
    scan.close();
    int target = 1;
    int num = 666;
    while(target != N){
        num++;
        if(String.valueOf(num).contains("666")){
            target++;
        }
    }
    System.out.println(num);
}