저작권
문제 설명
곡의 개수, 저작권이 있는 멜로디의 평균값을 제공받아
최소 몇개의 저작권이 있는 멜로디가 있는지 도출하는 문제.
소스코드
import math
A, I = map(int, input().split())
print(A * (I - 1) + 1)
Python 풀이
한 줄을 입력받아 split를 사용하여 분리한 뒤, A, I에 값을 대입한다.
A는 곡의 개수, I는 멜로디의 평균값이다.
이후 I, 즉 멜로디의 평균값을 구하는 공식이
(저작권 수 /노래 수)라는 것을 알 수 있다.
이를 변환하여 저작권 수 = 노래 수 * I의 식으로 변환할 수 있다.
하지만 중요한 것은 최소 몇 개의 멜로디가 있는지 이기 때문에
먼저 평균값은 올림을 하기 때문에 평균값에서 -1을 뺀다.
최소 저작권 수 >= A * (I - 1)
이후의 결과 값은 최소 멜로디의 개수보다 크거나 같게 된다
하지만 I의 값은 항상 올림이라 현재코드를 그대로 사용하면
최소 값보다 작아지는 경우가 있다.
예시를 들자면 90.xxxx가 위 수식의 결과 값일 때 실제 최소 값은 1 올려 91로 정해진다.
이를 해결하기 위해 +1을 하여 식을 완성한다.
최소 저작권 수 >= A * (I - 1) + 1
위방식으로 최소 멜로디의 개수를 구할 수 있다.
'Algorithm(알고리즘) > Baekjoon(백준)' 카테고리의 다른 글
| BAEKJOON 1436 Python (1) | 2024.11.21 |
|---|---|
| BAEKJOON 9093 Python (0) | 2024.11.20 |
| BAEKJOON 1439 Python (0) | 2024.11.18 |
| BAEKJOON 1475 Python (0) | 2024.11.17 |
| BAEKJOON 11005 Python (0) | 2024.11.16 |
