[백준 / BOJ] 1436번 영화감독 숌 (C++, Python)◎ 자료구조와 알고리즘/백준(BOJ) 문제풀이2022. 4. 13. 16:18
Table of Contents
반응형
링크 : https://www.acmicpc.net/problem/1436
문제
문제 풀이
분해합과 비슷한 방법을 사용했다. 시작은 666부터, solution 함수에 들어가면 6이 연속으로 3번 나오는지 체크해 맞다면 True를 리턴하도록 한다. True를 리턴했다면 입력받았던 N을 하나씩 줄이는 방식으로 구현하였다.
bool solution(int val) {
int cnt = 0;
while (val) {
if (val % 10 == 6)
cnt++;
else
cnt = 0;
if (cnt >= 3)
return true;
val /= 10;
}
return false;
}
파이썬도 비슷한 논리지만 숫자를 str로 바꿔 비교하는 것이 쉬워 더 간단하게 구현했다.
while True:
if '666' in str(start):
val += 1
if val == N:
print(start)
break
start += 1
C++ 코드 전문
Python 코드 전문
소감
반응형
'◎ 자료구조와 알고리즘 > 백준(BOJ) 문제풀이' 카테고리의 다른 글
[백준 / BOJ] 2751번 수 정렬하기 2 (C++, Python) (0) | 2022.04.14 |
---|---|
[백준 / BOJ] 2750번 수 정렬하기 (C++, Python) (0) | 2022.04.13 |
[백준 / BOJ] 1018번 체스판 다시 칠하기 (C++, Python) (0) | 2022.04.13 |
[백준 / BOJ] 7568번 덩치 (C++, Python) (0) | 2022.04.12 |
[백준 / BOJ] 2231번 분해합 (C++, Python) (0) | 2022.04.11 |
@Reo :: 코드 아카이브
자기계발 블로그