카니발 티켓
시간 제한2초메모리 제한1024 MB
정렬된 n개의 목록에서 각 목록의 원소를 하나씩 뽑아 k개의 서로소 집합을 만들고, 각 집합에서 중심 b를 최적으로 잡을 때의 총 절대편차 합을 최대화한다.
문제
링고는 싱가포르의 카니발에 왔다. 가방에는 경품 게임 가판대에서 쓸 티켓이 들어 있다. 티켓은 가지 색 중 하나를 가지며, 음이 아닌 정수가 하나씩 적혀 있다. 서로 다른 티켓에 적힌 정수가 같을 수도 있다. 카니발 규칙의 특이한 점 때문에 은 항상 짝수임이 보장된다.
링고의 가방에는 각 색마다 티켓이 장씩, 모두 장 들어 있다. 색 의 번째 티켓에는 정수 가 적혀 있다 (, ).
경품 게임은 라운드로 진행되며, 라운드 번호는 부터 까지다. 각 라운드는 다음 순서로 진행된다.
- 링고는 가방에서 각 색마다 티켓을 하나씩 골라 장의 집합을 만든다. 그런 다음 이 집합을 진행자에게 건넨다.
- 진행자는 그 집합의 티켓에 적힌 정수 을 적어 둔다. 이 개의 정수 순서는 중요하지 않다.
- 진행자는 행운의 추첨 상자에서 특별한 카드를 뽑아, 카드에 적힌 정수 를 적어 둔다.
- 진행자는 가 부터 까지일 때 와 의 절댓값 차이를 계산한다. 이 절댓값 차이의 합을 라고 하자.
- 이번 라운드에서 진행자는 링고에게 값이 인 경품을 준다.
- 집합에 든 티켓은 버려지며 이후 라운드에서 쓸 수 없다.
라운드가 끝난 뒤 링고의 가방에 남은 티켓은 버려진다.
자세히 관찰한 링고는 이 경품 게임이 조작되어 있다는 것을 알아냈다. 행운의 추첨 상자 안에는 사실 프린터가 있다. 진행자는 각 라운드마다 그 라운드 경품의 값을 최소로 만드는 정수 를 찾는다. 진행자가 고른 값이 그 라운드의 특별한 카드에 인쇄된다.
이 모든 사실을 아는 링고는 티켓을 라운드에 배분하려고 한다. 즉, 경품의 총합을 최대로 만들기 위해 각 라운드에 쓸 티켓 집합을 정하려고 한다.
제한
- 이고 은 짝수다.
- (모든 , 에 대해)
- (모든 , 에 대해)