만드는 중입니다

아직 만드는 중이라 바뀔 수 있습니다

전체 파일 수 알아내기

시간 제한5초메모리 제한512 MB

요약
잘린 퍼센트와 전송 파일 수 쌍들이 주어질 때 모든 줄에 맞는 전체 파일 수를 구하고 여러 개면 모호하다고 보고합니다.
난이도

보통10점 중 5점

유형
수학, 구간, 완전 탐색
정답자
아직 제출이 없습니다

문제

파일 전송 도구는 실행되는 동안 진행 상황을 한 줄씩 출력한다. 각 줄에는 지금까지 전송한 파일의 비율과 개수가 함께 나온다.

 20% |==>-------|     1 files transferred
100% |==========|     5 files transferred

비율은 정확하지 않다. 소수점 아래를 버리고 출력하기 때문에 1.2%와 1.7%가 모두 1%로 나온다. 전체 nn개 중 kk개를 전송한 시점의 줄에 찍히는 비율은 ⌊100k/n⌋\lfloor 100k/n \rfloor이다.

전체 파일 수까지 같이 출력하도록 이 도구를 고치려고 한다.

 20% |==>-------|     1 out of 5 files transferred
100% |==========|     5 out of 5 files transferred

그런데 전체 파일 수를 언제나 알아낼 수 있는 것은 아니다. 도구가 출력한 상태 줄이 주어지면 전체 파일 수를 구하거나, 조건에 맞는 전체 파일 수가 둘 이상이어서 하나로 정할 수 없음을 판정하라. 상태 줄은 일정한 간격으로 나오지 않고, 파일을 전송할 때마다 나오지도 않는다.

전체 파일 수 nn이 주어진 상태 줄과 맞는다는 것은, 모든 줄에서 그 줄의 파일 개수 kk에 대해 비율이 ⌊100k/n⌋\lfloor 100k/n \rfloor과 같고 nn이 줄에 나온 모든 파일 개수 이상이라는 뜻이다. 전송한 파일 수가 전체 파일 수보다 많을 수는 없다.

입력

첫째 줄에 테스트 케이스의 수 TT가 주어진다. 각 테스트 케이스의 첫 줄에는 상태 줄의 개수 NN이 주어지고, 이어지는 NN개의 줄에 두 정수 PiP_i와 KiK_i가 주어진다. 각각 그 줄에 출력된 비율과 그때까지 전송한 파일 개수이다. 상태 줄은 시간 순서대로 주어지므로 PiP_i와 KiK_i는 모두 감소하지 않는다.

제한

  • 1≤T≤501 \le T \le 50
  • 1≤N≤1001 \le N \le 100
  • 0≤Pi≤1000 \le P_i \le 100
  • 0≤Ki≤20000 \le K_i \le 2000
  • 각 테스트 케이스에는 조건에 맞는 전체 파일 수가 적어도 하나 있다.
  • 전체 파일 수가 하나로 정해지는 경우 그 값은 2000 이하이다.

출력

각 테스트 케이스마다 Case #x: y 형식으로 한 줄씩 출력한다. xx는 1부터 시작하는 테스트 케이스 번호이고, yy는 전체 파일 수이다. 조건에 맞는 전체 파일 수가 둘 이상이면 yy 자리에 -1을 출력한다.

예제2

  1. 예제 1

    입력
    3
    2
    20 1
    100 5
    10
    25 241
    27 262
    43 407
    44 413
    57 536
    64 601
    67 637
    84 789
    95 893
    96 903
    10
    0 0
    8 2
    8 2
    17 4
    30 7
    39 9
    69 16
    73 17
    82 19
    91 21
    
    예상 출력
    Case #1: 5
    Case #2: -1
    Case #3: 23
    
  2. 예제 2

    입력
    1
    2
    2 1
    5 2
    
    예상 출력
    Case #1: -1