간단한 숫자 나열
시간 제한1초메모리 제한512 MB
n과 k가 주어질 때 처음 n개의 소수를 이어 붙인 수에서 k개의 자릿수를 지워 남는 수가 최대가 되도록 만든다.
문제
수학 시간 쉬는 시간에 로마는 어떤 수가 소수인지 판별하는 연습을 하기로 했다. 소수란 자연수 중에서 약수가 정확히 두 개인 수, 즉 1과 자기 자신만을 약수로 갖는 수를 말한다. 로마는 칠판에 첫 번째 소수를 적고, 그 오른쪽에 두 번째 소수를 이어 적고, 다시 세 번째 소수를 이어 적는 식으로 첫 개의 소수를 모두 적었다. 그 결과 칠판에는 하나의 긴 수가 생겼고, 그 수는 <<23571113171923\dots>>처럼 시작한다.
로마의 선생님인 옐레나 예브게니예브나가 교실에 들어와서 반 학생들에게 다음과 같은 문제를 냈다. 칠판에 적힌 수에서 개의 숫자를 지워서 남은 수가 최대가 되도록 만들어 보라는 것이었다.
엄격한 선생님에게 낙제점을 받지 않도록 로마와 친구들을 도와 이 문제를 해결하자.
입력
이 문제의 입력 파일에는 여러 개의 테스트 데이터가 들어 있다. 입력 파일의 첫 줄에는 파일에 들어 있는 테스트 데이터의 개수 가 주어진다.
다음 개의 줄에는 각 테스트 데이터의 설명이 주어지며, 각 줄은 두 개의 양의 정수 과 로 이루어져 있다. 처음 개의 소수를 이어 붙인 수는 총 자리 이상임이 보장된다.
입력 파일에 있는 모든 의 합은 400000을 넘지 않는다.
출력
각 테스트 데이터마다 해당하는 과 에 대한 최대 수를 한 줄에 하나씩 출력한다.
힌트
첫 번째 테스트에서 로마는 수 2357을 적었다. 여기서 두 개의 숫자를 지워서 만들 수 있는 최대 수는 57이다.
두 번째 테스트에서 로마는 수 235711을 적었다. 여기서 세 개의 숫자를 지워서 만들 수 있는 최대 수는 711이다.