아직 만들고 있는 페이지입니다.

이 페이지는 아직 만드는 중입니다. 보이는 내용은 바뀔 수 있습니다.

완벽한 화음 (라지)

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

요약
주어진 모든 주파수와 서로 나누어 떨어지는 L 이상 H 이하의 가장 작은 값을 찾고 없으면 NO를 출력합니다.
난이도

어려움10점 중 8점

유형
정수론
정답자
아직 제출이 없습니다

문제

제프는 오케스트라 단원이다. 제프를 뺀 나머지 NN명의 연주자는 각자 연주할 소리를 이미 정해 두었고, 한 사람이 내는 소리는 하나뿐이다. 두 소리의 진동수 중 한쪽이 다른 쪽을 나누어떨어뜨리면 두 소리는 화음을 이룬다. 화음의 기준이 이렇게 까다롭다 보니 다른 연주자끼리는 서로 화음을 이루지 않는 경우가 많다. 제프는 자신의 소리가 나머지 연주자 전원의 소리와 화음을 이루기를 원한다.

진동수는 모두 양의 정수라서 진동수 11을 내거나 나머지 진동수 전체의 최소공배수를 내면 조건은 저절로 만족한다. 그런데 제프의 악기는 LL 이상 HH 이하의 진동수만 낼 수 있다. 이 범위 안에 조건을 만족하는 진동수가 있는지 판정하고, 있으면 그중 가장 작은 값을 구하라.

입력

첫째 줄에 테스트 케이스의 개수 TT가 주어진다. 이어서 TT개의 테스트 케이스가 주어지며, 각 테스트 케이스는 두 줄로 이루어진다.

첫째 줄에는 정수 NN, LL, HH가 공백으로 구분되어 주어진다. NN은 제프를 뺀 연주자 수, LL과 HH는 제프의 악기가 낼 수 있는 가장 낮은 진동수와 가장 높은 진동수이다. 둘째 줄에는 다른 연주자가 내는 진동수 NN개가 공백으로 구분되어 주어진다.

제한

  • 1≤T≤401 \le T \le 40
  • 1≤N≤1041 \le N \le 10^4
  • 1≤L≤H≤10161 \le L \le H \le 10^{16}
  • 모든 진동수는 11 이상 101610^{16} 이하의 정수이다

출력

각 테스트 케이스마다 한 줄에 Case #x: y 형식으로 출력한다. xx는 11부터 시작하는 테스트 케이스 번호이다. 조건을 만족하는 진동수가 없으면 yy 자리에 NO를 출력하고, 있으면 그중 가장 작은 진동수를 출력한다.

예제3

  1. 예제 1

    입력
    2
    3 2 100
    3 5 7
    4 8 16
    1 20 5 2
    
    예상 출력
    Case #1: NO
    Case #2: 10
    
  2. 예제 2

    입력
    5
    1 1 1
    1
    1 1 1000000000000000
    1000000000000000
    2 5 5
    10 15
    3 1 1000
    6 10 15
    1 7 7
    14
    
    예상 출력
    Case #1: 1
    Case #2: 1
    Case #3: 5
    Case #4: 1
    Case #5: 7
    
  3. 예제 3

    입력
    1
    6 100 1000
    2 3 6 12 600 1200
    
    예상 출력
    Case #1: 120