본문 바로가기
알고리즘 풀이

1436. 영화감독 숌

by 남생이야 2024. 1. 2.

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

 

1436번: 영화감독 숌

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

www.acmicpc.net

 

나는 처음에 문자열로 변환해서 할까해보다가 변환하지 않고 하기로 했다. 처음엔 한자리씩 비교해서 6이 연속되게 나오면 비교하려다 예시로 나오는 결과랑은 다르게 나와서 난항에 겪었고 결국 한번에 666을 나머지로 갖는지 검사 그리고 안나온다면 그 수를 한자리씩 비워서 검사하는 것을 찾아서 해보았다.. 이러한 아이디어를 내는게 쉽지않았다는걸 느꼈다.

#define _CRT_SECURE_NO_WARNINGS
#include <iostream>
#include <sstream>
#include <cstdio>
#include <cstdlib>
#include <algorithm>
#include <vector>
#include <string>
#include <queue>
#include <cmath>
using namespace std;

#define MAX 10000


bool FindEndNumber(int num)
{
    // 666 수가 포함되면 리턴 
    int check = num; 
    while (check > 0)
    {
        int des = check % 1000;
        check /= 10; 
        if (des == 666)
            return true;
    }

    return false; 
}

int main() {

    int n;
    cin >> n;
    cin.ignore();

    int count = 1; 
    int ansCount = 0; 
    int ans = 0; 
    while (true)
    {
        bool check = FindEndNumber(count); 
   
        if (check == true)
        {
            ans = count; 
            ansCount++;
            if (ansCount == n)
                break; 
        }
        count++;
    }
   

    cout << ans;

    return 0;
}

'알고리즘 풀이' 카테고리의 다른 글

1476. 날짜 계산  (0) 2024.01.14
14888번 연산자 끼워 넣기  (0) 2024.01.14
1018번 체스판 다시 칠하기  (0) 2023.12.31
1743. 음식물 피하기  (0) 2023.12.25
1325. 효율적인 해킹  (0) 2023.12.20