농부 존의 N마리의 젖소들은 직선 모양의 울타리에 서있다. 각 소들의 종은 1~8의 번호를 가졌으며 같은 위치에는 많아야 한 마리의 소가 있다.
농부 존은 연속한 구간의 소들을 찍으려고 하는데 찍힌 사진에는 사진에 포함된 종류의 소들이 골고루 들어갔으면 한다. 즉, 1, 3번 종의 소가 각각 27마리 있는 사진이나 1, 3, 4번 종의 소가 27마리 있는 사진은 찍을 수 있지만 1번 종의 소가 9마리 있고 3번 종의 소가 10마리 있는 사진은 찍을 수 없다. 한편 농부 존은 K종 이상의 소들이 찍히는 것을 원한다.
한편, 농부 존은 농장의 광활함을 표현하기 위해 최대한 넓은 사진을 찍으려고 한다. 농부 존을 도와 얼마나 넓은 사진을 찍을 수 있는지 구하는 프로그램을 작성하여라. 단, 사진의 양 끝에 젖소가 걸쳐있어야 한다.
입력 9 2 1 1 5 1 6 1 9 1 100 1 2 2 7 2 3 3 8 3 출력 6
FJ wants to take a photo of a contiguous interval of cows for the county fair, but we wants all of his breeds to be fairly represented in the photo. Therefore, he wants to ensure that, for whatever breeds are present in the photo, there is an equal number of each breed (for example, a photo with 27 each of breeds 1 and 3 is ok, a photo with 27 of breeds 1, 3, and 4 is ok, but 9 of breed 1 and 10 of breed 3 is not ok). Farmer John also wants at least K (K >= 2) breeds (out of the 8 total) to be represented in the photo. Help FJ take his fair photo by finding the maximum size of a photo that satisfies FJ's constraints. The size of a photo is the difference between the maximum and minimum positions of the cows in the photo.
If there are no photos satisfying FJ's constraints, output -1 instead.
입력 9 2 1 1 5 1 6 1 9 1 100 1 2 2 7 2 3 3 8 3 출력 6
Breed ids: 1 2 3 - 1 1 2 3 1 - ... - 1 Locations: 1 2 3 4 5 6 7 8 9 10 ... 99 100
출처:USACO 2014 US Open, Gold 번역:functionx