잘린 퍼센트와 전송 파일 수 쌍들이 주어질 때 모든 줄에 맞는 전체 파일 수를 구하고 여러 개면 모호하다고 보고합니다.
보통5수학구간완전 탐색아직 제출이 없습니다시간 제한5초메모리 제한512 MB파일 전송 도구는 실행되는 동안 진행 상황을 한 줄씩 출력한다. 각 줄에는 지금까지 전송한 파일의 비율과 개수가 함께 나온다.
20% |==>-------| 1 files transferred
100% |==========| 5 files transferred
비율은 정확하지 않다. 소수점 아래를 버리고 출력하기 때문에 1.2%와 1.7%가 모두 1%로 나온다. 전체 n개 중 k개를 전송한 시점의 줄에 찍히는 비율은 ⌊100k/n⌋이다.
전체 파일 수까지 같이 출력하도록 이 도구를 고치려고 한다.
20% |==>-------| 1 out of 5 files transferred
100% |==========| 5 out of 5 files transferred
그런데 전체 파일 수를 언제나 알아낼 수 있는 것은 아니다. 도구가 출력한 상태 줄이 주어지면 전체 파일 수를 구하거나, 조건에 맞는 전체 파일 수가 둘 이상이어서 하나로 정할 수 없음을 판정하라. 상태 줄은 일정한 간격으로 나오지 않고, 파일을 전송할 때마다 나오지도 않는다.
전체 파일 수 n이 주어진 상태 줄과 맞는다는 것은, 모든 줄에서 그 줄의 파일 개수 k에 대해 비율이 ⌊100k/n⌋과 같고 n이 줄에 나온 모든 파일 개수 이상이라는 뜻이다. 전송한 파일 수가 전체 파일 수보다 많을 수는 없다.
첫째 줄에 테스트 케이스의 수 T가 주어진다. 각 테스트 케이스의 첫 줄에는 상태 줄의 개수 N이 주어지고, 이어지는 N개의 줄에 두 정수 Pi와 Ki가 주어진다. 각각 그 줄에 출력된 비율과 그때까지 전송한 파일 개수이다. 상태 줄은 시간 순서대로 주어지므로 Pi와 Ki는 모두 감소하지 않는다.
각 테스트 케이스마다 Case #x: y 형식으로 한 줄씩 출력한다. x는 1부터 시작하는 테스트 케이스 번호이고, y는 전체 파일 수이다. 조건에 맞는 전체 파일 수가 둘 이상이면 y 자리에 -1을 출력한다.