곡의 개수 A와 평균값 I가 주어졌을 때 적어도 몇 곡이 저작권이 있는 멜로디인지 구해야한다.
멜로디 M의 최솟값을 구해야한다.
정확한 M의 값을 구하는 것이 아니고 M / A의 값이 I가 되도록하는 최솟값을 찾는 것.
문제의 문장만 봐도 저작권이 있는 멜로디 M은 894개지만 같은 조건의 예제 최솟값은 875개.
M이 894일 때 평균 : 23.53
M이 최솟값 875일 때 평균 : 23.02
평균값 I는 항상 올림이 되어있다.
평균값 I는 항상 올림이 되어있기때문에 I의 값의 범위는
위의 예제 범위에 대입한다면 I = M/A
이런 식으로 정리할 수 있는데 M을 구하기 위해 식을 정리하면
수록곡의 수A는 38이라고 했으니 계산해보면
멜로디의 수는 정수이므로 해당 범위에서 최솟값을 구하기위해 +1
가 최솟값이 된다.
정리하자면
M의 최솟값은 평균값I의 최소 범위인I-1에A를 곱한 뒤+1을 한 값
(편의상 최소 범위라고 했지만 I-1은 I 범위에 포함이 되어있지않음)
#include <iostream>
using namespace std;
int main()
{
int A,I;
cin >> A >> I;
cout << A*(I-1)+1;
return 0;
}
https://www.acmicpc.net/board/view/110527
https://velog.io/@osk3856/BOJ-JAVA-Bronze5-2914