값싼 여행
면접 대비시간 제한2초메모리 제한512 MB
여행 순서는 바꾸지 않고 쉼 없이 진행한다. 120분 간격 안의 할인 횟수를 배분해 최소 비용을 구한다.
문제
Nlognia에는 대중교통 할인 제도가 있다. 승객이 첫 번째 이동을 시작하면 동시에 120분 구간이 시작되고, 이 구간이 끝나기 전에 시작하는 일부 이동에 할인이 적용된다. 두 번째 이동에는 정가의 50%가 할인되고, 여섯 번째 이동까지(즉, 네 번 더)의 나머지 이동 각각에는 정가의 75%가 할인된다. 120분 구간이 끝나면, 다음 이동이 시작될 때 같은 종류의 할인이 적용되는 새 구간이 시작된다.
Ástor는 막 Nlognia에 도착한 교환 학생이다. 그는 일련의 이동을 하면서 가능한 한 적은 돈을 쓰고 싶어 한다. 이 일련의 첫 번째 이동은 아무 때나 시작할 수 있다. 첫 번째를 제외한 각 이동은 그 앞의 이동이 끝나기 전에는 시작할 수 없지만, 필요한 만큼 늦출 수는 있다. 일련의 각 이동의 소요 시간과 정가가 주어질 때, Ástor가 일련의 모든 이동을 마치는 데 필요한 최소 비용을 알려줄 수 있는가?
입력
첫째 줄에는 일련의 이동 개수를 나타내는 정수 N (1 ≤ N ≤ 104)이 주어진다. 다음 N개의 줄에는 각각 이동을 나타내는 두 정수 D와 C (1 ≤ D, C ≤ 1000)가 주어지며, 각각 소요 시간(분)과 정가를 나타낸다.
출력
입력에 나온 순서대로 모든 이동을 마치는 데 필요한 최소 비용을 한 줄에 출력한다. 결과는 소수점 이하 두 자리를 정확히 갖는 유리수로 출력해야 하며, 필요한 경우 반올림한다.