페이지를 불러오는 중…
해결한 사람
1
명
정답률
100.00
%
시간 제한
30000
ms
메모리 제한
1024
MB
가장 일반적인 주사위는 개의 면을 가지며 각 면에는 부터 까지의 서로 다른 정수가 표시되어 있지만, 다른 종류의 주사위를 사용하는 게임도 많다. 특히 는 개의 면을 가지며 각 면에 부터 까지의 서로 다른 정수가 표시된 주사위이다. 는 일반적인 주사위이고, 는 면이 네 개이며, 는 면이 백만 개이다.

이 문제에서는 개의 주사위 모음으로 시작한다. 번째 주사위는 이다. 즉, 이 주사위에는 개의 면이 있고, 각 면에는 부터 까지의 정수가 표시되어 있다. 에서 시작하는 길이 의 연속 수열은 정수 목록 이다. 주사위 중 일부를 선택하고(전부를 선택해도 된다), 각 주사위에서 수 하나씩을 골라 연속 수열을 만들고자 한다. 이 방법으로 만들 수 있는 가장 긴 연속 수열의 길이는 얼마인가?
메모리 제한: 1 GB. .
시간 제한: 5초. . 모든 에 대해 .
시간 제한: 15초. . 모든 에 대해 .
입력의 첫 번째 줄에는 테스트 케이스의 수 가 주어진다. 이어서 개의 테스트 케이스가 주어진다. 각 테스트 케이스는 두 줄로 설명된다. 테스트 케이스의 첫 번째 줄에는 게임에 사용되는 주사위의 수를 나타내는 정수 하나 이 주어진다. 두 번째 줄에는 개의 정수 가 주어지며, 각각은 서로 다른 주사위 하나의 면 개수를 나타낸다.
각 테스트 케이스마다 Case #$x$: $y$를 포함하는 한 줄을 출력한다. 여기서 는 테스트 케이스 번호이며(1부터 시작한다), 는 연속 수열에 포함할 수 있는 입력 주사위 수의 최댓값이다.
4
4
6 10 12 8
6
5 4 5 4 4 4
10
10 10 7 6 7 4 4 5 7 4
1
10
Case #1: 4
Case #2: 5
Case #3: 9
Case #4: 1
예제 케이스 #1에서는 개의 주사위를 모두 사용해 연속 수열을 만드는 방법이 여러 가지 있다. 가능한 방법 하나가 위 이미지에 나와 있다.
예제 케이스 #2에서는 어떤 주사위도 보다 큰 정수를 표시할 수 없으므로, 개보다 많은 주사위로 연속 수열을 만들 방법은 없다. 정확히 개의 주사위로 연속 수열을 만드는 방법은 여러 가지 있다. 예를 들어, 두 에서 각각 정수 와 를 고른 다음, 중 세 개에서 정수 와 를 골라 을 만든다.
예제 케이스 #3에서는 하나를 버리고, 들, , 를 사용해 부터 까지를 얻고, 들을 사용해 부터 까지를 얻으며, 들을 사용해 와 를 얻음으로써 연속 수열 를 만들 수 있다. 길이 의 연속 수열을 만들 방법은 없으므로, 이것이 가능한 최선이다.
예제 케이스 #4에서는 길이 의 연속 수열만 만들 수 있지만, 주어진 에서 어떤 정수든 골라 그렇게 할 수 있다.
Copyright Google LLC; sourced from the Google Coding Competitions Archive.
로그인 상태를 확인하는 중입니다.