반응형
https://www.acmicpc.net/problem/23972
구현 문제였습니다.
📕 풀이방법
📔 입력 및 초기화
k, n을 입력해줍니다.
📔 풀이과정
정답 x에 대해 손해보지 않는다면 다음 공식이 성립합니다.
x >= (x - k) * n
x에 대해 이항하면 x >= (k*n) / (n-1)가 됩니다. 답은 두 가지 경우가 됩니다.
1. n이 1일 때 무조건 손해보므로 -1을 출력합니다.
2. 아닌 경우 공식을 적용한 답을 출력합니다. 정수형이므로 나머지가 남는다면 1을 더해줍니다.
📔 정답출력
정답을 출력합니다.
📕 Code
import sys
input = sys.stdin.readline
k, n = map(int, input().split())
if(n == 1): print(-1)
else:
ans = (k*n)//(n-1)
if((k*n) % (n-1)): ans += 1
print(ans)
'Algorithm > Math' 카테고리의 다른 글
(C++) - 백준(BOJ) 24568 : Cupcake Party (0) | 2022.03.20 |
---|---|
(C++) - 백준(BOJ) 14215 : 세 막대 (0) | 2022.03.13 |
(C++) - 백준(BOJ) 12840 : 창용이의 시계 (0) | 2022.03.09 |
(C++) - 백준(BOJ) 9298 : Schronisko (0) | 2022.02.20 |
(C++) - 백준(BOJ) 8678 : Zbiór (0) | 2022.02.02 |