만드는 중입니다

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

가게 적립금 (라지)

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

요약
각 테스트 케이스에서 두 물건 가격의 합이 크레딧 C가 되는 두 위치를 찾아 작은 위치부터 출력합니다.
난이도

쉬움10점 중 3점

유형
해시맵, 배열
정답자
아직 제출이 없습니다

문제

동네 가게에서 적립금 CC를 받았고, 이 적립금으로 물건 두 개를 사려고 한다.

먼저 가게를 한 바퀴 돌면서 판매 중인 물건의 가격을 순서대로 적어 목록 LL을 만든다. 이 목록에서 가격의 합이 적립금과 정확히 같은 물건 두 개를 고른다.

답은 고른 두 물건이 목록에서 차지하는 위치 두 개다. 목록의 첫 번째 물건의 위치는 1이고, 작은 위치를 먼저 쓴다.

입력

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

  • 첫 줄에 가게에서 쓸 수 있는 적립금 CC가 주어진다.
  • 둘째 줄에 가게에 있는 물건의 수 II가 주어진다.
  • 셋째 줄에 물건 II개의 가격 PP가 공백으로 구분되어 주어진다. 가격은 목록에 적은 순서와 같다.

각 테스트 케이스의 답은 정확히 하나다. 즉 가격의 합이 CC가 되는 위치 쌍은 하나뿐이다.

제한

  • 1≤N≤501 \le N \le 50
  • 5≤C≤10005 \le C \le 1000
  • 3≤I≤20003 \le I \le 2000
  • 1≤P≤10001 \le P \le 1000

출력

각 테스트 케이스마다 한 줄에 Case #x: 다음 가격의 합이 적립금과 같은 두 물건의 위치를 공백으로 구분해 출력한다. xx는 1부터 시작하는 테스트 케이스 번호이고, 작은 위치를 먼저 출력한다.

예제5

  1. 예제 1

    입력
    3
    100
    3
    5 75 25
    200
    7
    150 24 79 50 88 345 3
    8
    8
    2 1 9 4 4 56 90 3
    
    예상 출력
    Case #1: 2 3
    Case #2: 1 4
    Case #3: 4 5
    
  2. 예제 2

    입력
    1
    5
    3
    1 4 9
    
    예상 출력
    Case #1: 1 2
    
  3. 예제 3

    입력
    1
    8
    3
    4 4 1
    
    예상 출력
    Case #1: 1 2
    
  4. 예제 4

    입력
    1
    1000
    5
    7 9 3 500 500
    
    예상 출력
    Case #1: 4 5
    
  5. 예제 5

    입력
    4
    1000
    3
    999 1 500
    5
    5
    100 1 100 4 100
    7
    4
    3 900 4 2
    12
    3
    6 1000 6
    
    예상 출력
    Case #1: 1 2
    Case #2: 2 4
    Case #3: 1 3
    Case #4: 1 3