30분 이전에는 2배로 이동한다는 점
30분 이후에는 2/3배로 이동한다는 점을 활용해서 계산하면 된다.
#include <iostream>
using namespace std;
float M, answer;
int main()
{
ios::sync_with_stdio(0), cin.tie(0);
cin >> M;
cout << fixed;
cout.precision(1);
if (M > 30)
{
answer = 15 + (M - 30) * 3 / 2;
}
else
{
answer = M / 2;
}
cout << answer;
return 0;
}
30분 이전에는 2로 나누어준다.
30분 이후에는 30을 2로 나누어서 사용해 주고 30을 뺀 값을 3을 곱하고 2로 나누어준다.
거꾸로 계산하면 되는 것이다.