만드는 중입니다

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

사진

시간 제한1초메모리 제한1024 MB

요약
이벤트 이름마다 사진 수가 주어질 때, 모든 파일 이름을 사전순으로 나열한 K번째 이름을 질의마다 구합니다.
난이도

보통10점 중 7점

유형
트라이, 문자열, 정렬, 이분 탐색
정답자
아직 제출이 없습니다

문제

Bajtazar는 자신의 여러 행사에서 찍은 사진을 많이 모아 두었다. 예를 들어 ferie1.jpg, ferie2.jpg, ..., ferie129.jpg, oboz1.jpg, oboz2.jpg, ..., oboz13.jpg, olimpiada1.jpg, olimpiada2.jpg, ..., olimpiada30.jpg 같은 파일이 있다.

즉, 사진 이름은 행사 이름(영어 소문자로 이루어진 문자열)과 앞에 0이 없는 수로 이루어진다.

Bajtazar는 친구들이 모두 사진을 볼 수 있도록 사진을 소셜 네트워크에 올리려 한다. 그런데 사진이 사전순으로 정렬될 것이라는 점은 예상하지 못했다. 예를 들어 zdj10은 zdj2보다 먼저 나오고, ferie351은 ferie37보다 먼저 나온다. 그러면 사진에 담긴 행사의 순서가 뒤섞여 Bajtazar의 이미지에 돌이킬 수 없는 피해가 생긴다.

사진이 올라가고 공개되는 동안, Bajtazar가 피해 규모를 가늠할 수 있도록 도와 달라. 여러 K 값에 대해, 주어진 파일들 중 사전순으로 K번째인 이름을 구하라.

참고: 앞의 0은 0023이나 042처럼 수의 왼쪽에 붙은 불필요한 0을 뜻한다.

입력

첫 줄에 행사의 수 N (1≤N≤200 0001 \le N \le 200\,000)이 주어진다. 이어지는 N개의 줄에는 영어 소문자로 이루어진 비어 있지 않은 행사 이름, 공백 한 칸, 그리고 그 행사의 사진 수 PiP_i (1≤Pi<10181 \le P_i < 10^{18})가 주어진다. 각 행사의 사진은 1부터 PiP_i까지 번호가 붙어 있다. 파일 이름은 행사 이름과 번호로 이루어지며, 확장자 .jpg는 생략한다 (예: olimpiada28).

다음 줄에는 질문의 수 Q (1≤Q≤800 0001 \le Q \le 800\,000)가 주어진다. 이어지는 Q개의 줄에는 자연수 KiK_i (1≤Ki<10181 \le K_i < 10^{18})가 한 개씩 주어진다.

모든 행사 이름의 길이의 합은 2 000 0002\,000\,000을 넘지 않는다. 행사 이름은 모두 서로 다르다. 컬렉션의 전체 사진 수는 101810^{18}을 넘지 않는다.

출력

Q개의 줄을 출력한다. i번째 줄에는 컬렉션의 사진 이름 중 사전순으로 KiK_i번째인 이름을 출력한다. 그런 이름이 없으면 NIE를 출력한다.

출력해야 하는 모든 문자열의 길이의 합이 20 000 00020\,000\,000을 넘지 않도록 보장된다.

예제1

  1. 예제 1

    입력
    3
    olimpiada 13
    oboz 40
    zadanka 7
    3
    10
    41
    65
    
    예상 출력
    oboz18
    olimpiada1
    NIE