풀이.
num이라는 int 자료형 변수를 만들고,
0부터 시작해 666이 숫자 안에 존재할때까지 계속해서 1을 더해준다. (체크해주는 함수를 구현)
함수는 num을 문자열로 바꾸어 find 함수를 통해 666이 존재하는지 확인하고 존재하면 true를 반환한다.
이 과정을 N번을 반복해주면
N번째 종말의 수를 찾을 수 있다.
#include <iostream>
#include <string>
using namespace std;
//666이 연속으로 나오는지 체크하는 함수
bool Check(int num)
{
string num_ = to_string(num); //문자열로 변환
if (num_.find("666") != string::npos)
return true;
else
return false;
}
int main()
{
int N, num;
cin >> N;
num = 0;
for (int i = 0; i < N; i++)
{
while (true)
{
num++;
if (Check(num)) break;
}
}
cout << num;
}
'C++ > 백준 코딩테스트 풀이 C++' 카테고리의 다른 글
2751 수 정렬하기 C++ (1) | 2022.07.29 |
---|---|
C++ 7568 덩치 (0) | 2022.07.22 |
C++ 2884 알람시계 (0) | 2022.07.06 |
C++ 1181 단어 정렬 (0) | 2022.07.04 |
C++ 10871 X보다 큰 수 (0) | 2022.07.03 |