PS/BOJ

[백준 BOJ] 1436 영화감독 숌

Jubil 2019. 8. 11. 00:39
반응형

링크

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

 

풀이

6이 연속으로 3번 이상 들어간 수를 찾는 문제입니다.

1부터 시작해서 증가시키며 종말의 숫자를 찾으면 됩니다.

종말의 숫자를 찾는 방법은 다음과 같습니다.

예) 4666231

4666231%1000 -> 231 X

4666231/10 -> 466623

466623%1000 -> 623 X

466623/10 -> 46662

46662%1000 -> 662 X

46662/10 -> 4666

4666%1000 -> 666 O  찾았다!!

 

다음을 코드로 구현해서 count하고 그게 n과 같을 때 출력해주면 됩니다.

 

코드

//1436_영화감독 숌
#include <cstdio>
#include <string>
using namespace std;

int i, tmp, n, flag, cnt;
string str;

int main() {
	scanf("%d", &n);

	while (++i) {
		tmp = i, flag = 0;
		while (tmp) {
			if (tmp % 1000 == 666) flag = 1;
			tmp /= 10;
		}

		if (flag) {
			cnt++;
			if (cnt == n)break;
		}
	}

	printf("%d\n", i);

	return 0;
}

반응형

'PS > BOJ' 카테고리의 다른 글

[백준 BOJ] 2312 수 복원하기  (0) 2019.08.11
[백준 BOJ] 1074 Z  (0) 2019.08.11
[백준 BOJ] 1018 체스판 다시 칠하기  (0) 2019.08.10
[백준 BOJ] 11365 !밀비 급일  (0) 2019.08.10
[백준 BOJ] 1476 날짜 계산  (0) 2019.08.10