문제 출처 :www.acmicpc.net/problem/6064
문제 해석 : x,y로 이루어진 달력은 M, N보다 크면 그 나머지 값을 가지게 되는데 1부터 시작하게 된다.
문제 풀이 : 시간 복잡도를 해결하기 위해서는 수학적 계산을 통해서 문제를 풀어야한다. X를 만족하는 M을 for 문을 통해서 반복적으로 위로 연산 하면서 찾으면 해결 할 수 있다.
풀이 코드
T = int(input())
for test_case in range(T):
M,N,x,y = map(int, input().split())
answer = -1
x = x-1
y = y-1
for i in range(x, (N*M)+1, M):
if (i)%N == y:
answer = i + 1
break
print(answer)
author : donghak park
contact : donghark03@naver.com
## 문제의 저작권은 백준 알고리즘 사이트에 있습니다. 혹시 문제가 되는 부분이 있으면 연락 바랍니다.
'📊알고리즘, 문제풀이 > 📈문제풀이 (PS)' 카테고리의 다른 글
[알고리즘][Python] 백준 7569 토마토(3차원) 문제 풀이 (0) | 2021.01.13 |
---|---|
[알고리즘][Python] 백준 7576 토마토 문제 풀이 (0) | 2021.01.13 |
[알고리즘][Python] 백준 5525 IOIOI 문제 풀이 (0) | 2021.01.12 |
[알고리즘][Python] 백준 5430 AC 문제 풀이 (0) | 2021.01.12 |
[알고리즘][Python] 백준 2667 단지번호붙이기 문제 풀이 (0) | 2021.01.12 |