본문 바로가기

코딩 테스트/Python_백준88

[백준/Python] 1436번 영화감독 숌 문제 ■ 1436번 영화감독 숌 문제 ■ 코드 풀이 이번 문제도 역시나 어려웠습니다. 우선 정답 코드입니다. 이 코드는 다른 사람이 푼 코드를 참고했습니다. 먼저 666부터 시작합니다. 그리고 666에서부터 1씩 숫자를 증가시키면서 '666'이 포함되어 있다면 입력받은 N에서 1씩 빼줍니다. 최종적으로 N이 0이 되었을 때 start num에는 N번째 영화 제목이 기록되어 있게 됩니다. N = int(input()) start_num = 666 while N != 0: if '666' in str(start_num): N = N-1 if N == 0: break start_num = start_num + 1 print(start_num) 아래는 제가 풀었던 코드입니다. 굉장히 복잡하게 풀었는데요. 저는 1씩 .. 2023. 5. 6.
[백준/Python] 1018번 체스판 다시 칠하기 문제 ■ 1018번 체스판 다시 칠하기 문제 ■ 코드 풀이 개인적으로 너무 어려웠던 문제였습니다. 다른 분의 코드를 참고하여 문제를 풀었습니다. 핵심 아이디어는 Convolution 연산과 비슷합니다. 크기가 큰 이미지가 있으면, 8 by 8 짜리 작은 Window가 그 이미지를 쭉 스캔한다고 생각하시면 됩니다. 전체 이미지에서 스캔의 범위를 정하기 위해 for문이 2개(i와 j) 필요합니다. 문제에서 색깔은 'B'와 'W' 밖에 없고, 각각 번갈아서 색칠되어야 하기 때문에 제일 위의 왼쪽 Block의 색깔에 따라 2가지 경우밖에 없다고 제시했습니다. 따라서 이 두 가지 경우에 대해서만 고려하면 됩니다. 이를 위해 8 by 8 Window가 선택되었다면 그 안에서 첫 번째 Block이 'B'인 경우(is_it.. 2023. 5. 5.
[백준/Python] 19532번 수학은 비대면강의입니다 문제 ■ 19532번 수학은 비대면강의입니다 문제 ■ 코드 풀이 저는 단순히 쉽게 생각했습니다. x, y 2개의 변수밖에 없고 범위도 제한적이며 유일해가 보장되므로 for 문을 통해 값을 차례대로 대입하며 해를 찾도록 코드를 작성했습니다. 도중에 해를 찾으면, 그 해는 문제 조건에 의해 유일해이므로 바로 두 개의 반복문을 모두 탈출합니다. a,b,c,d,e,f = map(int, input().split()) solution = False for x in range(-999,1000): for y in range(-999,1000): if (a*x + b*y == c) and (d*x + e*y == f): solution = True break if solution: break print(x,y) 2023. 5. 4.