영화감독 숌 [ Python ] [ 백준 : 1436 ]
2023. 5. 25. 20:04ㆍ알고리즘/백준
풀이 및 회고
이 문제를 봤을때 문제가 정말 이해가 안되었다. 20분도 넘게 문제만 본 느낌이다.
예제에 10의 자리까지 보여줬으면 쉽게 유추할 수 있었을 것같은데 덕분에 숌만 욕했다.
최소 666이 포함되어야하고 1666, 2666, ... 6666, 6660, 6661 이런식으로 값이 올라가는 것 같았다.
문제에 대한 구현을 어려워 하던중 페어프로그래밍을 같이하시던 신범님이 list 에 666이 포함된 값을 넣어 반복해 찾는 방법으로 하면 될 것 같다고 아이디어를 내주셨고 풀이에 옮기셨다.
루프를 리스트의 크기가 n 보다 적을때까지 반복하고 루프안에서 i 가 666이 포함된 값이라면 리스트에 값을 넣는다.
그리고 리스트의 가장 마지막 값을 출력하면 정답이 나온다.
# 영화감독 숌
n = int(input())
i = 0
list = [] # 666 이 포함된 값을 넣을 리스트
while len(list) < n:
if '666' in str(i): # i 가 666이 포함된 값인지 확인
list.append(i) # 666이 포함된 값이면 list 에 추가
i += 1 # i 를 1씩 증가시킨다.
print(list[-1]) # 리스트의 마지막 인덱스값을 출력
문제의 메모리 제한도 넉넉해 풀 수 있었던 방법인 것 같다.
문제 이해가 어렵던 것에 비해 짧은 코드가 나와 오묘하다.
페어 프로그래밍을 왜 하는지에 대한 것이 잘 이해가 되지 않았었는데 페어 프로그래밍을 진행함으로서
서로 부족한 부분을 도와 줄 수 있으며 다양한 방법을 알게되어 혼자 알고리즘을 푸는 것 만큼 .. 음 보다 더 도움이 되는 것 같다.
처음부터 페어 프로그래밍을 제대로 하지 않던것이 조금 아쉽다.
'알고리즘 > 백준' 카테고리의 다른 글
덱 [ Python ] [ 백준 : 10866 ] (0) | 2023.05.26 |
---|---|
소수 찾기 [ Python ] [ 백준 : 1978 ] (1) | 2023.05.26 |
거스름돈 [ Python ] [ 백준 : 14916 ] (0) | 2023.05.25 |
최소공배수 [ Python ] [ 백준 : 1934 ] (0) | 2023.05.24 |
ATM [ Python ] [ 백준 : 11399 ] (0) | 2023.05.24 |