종말의 수란 어떤 수에 6이 적어도 3개 이상 연속으로 들어가는 수를 말한다. 제일 작은 종말의 수는 666이고, 그 다음으로 큰 수는 1666, 2666, 3666, .... 이다. 따라서, 숌은 첫 번째 영화의 제목은 "세상의 종말 666", 두 번째 영화의 제목은 "세상의 종말 1666"와 같이 이름을 지을 것이다. 일반화해서 생각하면, N번째 영화의 제목은 세상의 종말 (N번째로 작은 종말의 수) 와 같다.
숌이 만든 N번째 영화의 제목에 들어간 수를 출력하는 프로그램을 작성하시오. 숌은 이 시리즈를 항상 차례대로 만들고, 다른 영화는 만들지 않는다
첫째 줄에 N이 주어진다. N은 10,000보다 작거나 같은 자연수이다.
첫째 줄에 N번째 영화의 제목에 들어간 수를 출력한다.
#include <iostream>
using namespace std;
#define FASTIO cin.tie(0); cout.tie(0); ios_base::sync_with_stdio(0);
int find666(int N) {
int i = 666;
int count = 0;
while (1) {
string target = to_string(i);
for (int j = 0; j < target.size() - 2; ++j) {
if (target[j] == '6' && target[j+1] == '6' && target[j+2] == '6') {
count++;
if (count == N) {
return i;
}
break;
}
}
i++;
}
}
int main()
{
FASTIO;
int N; cin >> N; cout << find666(N);
}