728x90
문제를 풀다가 좀 재밌게 푼 것 같아서 업로드한다.
처음에는 동작 원리 자체를 이해 못해서 그냥 S가 가장 크면 S를 출력하게 했는데,
다시 읽어보니 각각 15, 28, 19로 나눠서 나온 나머지가 일치하는 수를 찾는것이었다.
그래서 제일 큰수인 28에 0부터 차례대로 곱해서 S를 더한 값을
15와 19로 나눠서 나머지가 각각 E, M과 일치한 값을 찾도록 코드를 짰는데 값이 틀렸다.
다시 생각 해 보니 만약 15와 19로 나누어지면 나머지가 0이라 값이 달라진다.
그래서 나머지가 0일 경우에는 각각 15와 19로 값이 변하게끔 코딩을 짰더니 성공!
E,S,M=map(int,input().split())
i=0
while True:
a=28*i+S
b=a%19
c=a%15
if b==0: b=19
if c==0: c=15
if b==M and c==E:
print(a)
break
i+=1
728x90
'Baekjoon Case' 카테고리의 다른 글
[파이썬 / 백준 10160번] 30 (0) | 2021.10.28 |
---|---|
[파이썬 / 백준 1629번] 곱셈 (0) | 2021.10.21 |
[파이썬 / 백준 1934번] 최소공배수(유클리드 호제법) (0) | 2021.10.15 |
[파이썬 / 백준 1006번] 다리놓기 (0) | 2021.10.07 |
[파이썬 / 백준 1005번] ACM CRAFT (0) | 2021.10.05 |