눈송이의 개발생활

[BOJ]1476 - 날짜 계산 (Python) 본문

Algorithm/BOJ

[BOJ]1476 - 날짜 계산 (Python)

꾸지새미언니

문제 

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

코드 

E, S, M = map(int, input().split())

answer = 1
while True:
    # 배수가 되는 수에서 빼고 그 다음 나머지 계산
    if (answer - E)%15 == 0 and (answer - S)%28 == 0 and (answer - M)%19 == 0:
        print(answer)
        break
    answer+=1

 

풀이 

풀이를 생각해내는게 생각보다 오래 걸렸다. 

실버5 문제인데도 꽤 어려워서(나한테는...) 내가 생각한 풀이를 완전 바꿔야 했었다. 

처음에는 for문을 계속 돌면서 3 수(15, 28, 19)의 공배수를 찾는 방법으로 생각했는데 코드를 짤 수 없어서 반대로 접근해보았다. 

숫자를 계속 키워가면서 3가지 조건에 모두 부합하는 수를 찾는 것이다. 

코드에서 answer에서 E, S, M을 뺀 이유는, 이 숫자들이 곳 answer를 각 15, 28, 19로 나눴을 때의 나머지이기 때문이다. 

 

아이디어만 잘 생각해 낸다면 어렵지 않게 풀 수 있는 문제였을 것 같다. 

3일 뒤에 복습해야지~ 

Comments