have to do_yeon

[백준 / C++] 1436. 영화감독 숌 본문

C++/Baekjoon (C++)

[백준 / C++] 1436. 영화감독 숌

또김또 2022. 8. 20. 18:57

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

 

1436번: 영화감독 숌

666은 종말을 나타내는 숫자라고 한다. 따라서, 많은 블록버스터 영화에서는 666이 들어간 제목을 많이 사용한다. 영화감독 숌은 세상의 종말 이라는 시리즈 영화의 감독이다. 조지 루카스는 스타

www.acmicpc.net

 

 

 


 

어떻게 풀었는지 나도 잘 모르겠다. 얼떨결에 풀어냈고, 성공했는데... 하나하나 다시 살펴보자!

 

처음에 브루트포스 알고리즘 항목임을 확인하고, 시간 제한이 2초임을 확인했다.

그냥 풀고싶은 대로 풀어도 시간 내에 풀 수 있을 것 같아 무작정 1이 입력되면 출력되어야 할 666 부터 시작하는 반복문을 활용하였다.

 

현재 내가 알고 있는 지식 내에서, int의 형태이면 그 숫자 안에 '666'이라는 숫자열이 포함되어있는지 확인하기 힘들 것 같다고 생각했다.

따라서 to_string을 활용하여 string으로 바꿔준 후 find 함수를 활용하여 "666"이라는 문자열이 있으면 정수배열에 저장하고, 그 정수배열의 순서가 입력한 숫자와 같으면 그 배열에 저장된 숫자를 출력하도록 했다.

 

더 최적화 할 수 있을 것 같지만, 일단은 제출한 그대로를 업로드해본다.

(절대 귀찮은 것이 아님... 어쨌든 그런거임...ㅜㅜ

 


제출 답안
#include <iostream>
using namespace std;

int main(void){
    int N, save[10001], j = 1;
    cin>> N;

    for(int i = 666; i<6666666666; i++){
        if(to_string(i).find("666") != string::npos){
            save[j] = i;
            if(j == N) break;
            j++;
        }
    }
    cout<< save[j];
}
Comments