대회 개최
시간 제한1초메모리 제한1024 MB
각 그룹에서 난이도를 하나씩 골라 순서를 정할 때, 인접한 난이도 차이의 합을 최소로 만드는 값을 구합니다.
문제
용범이는 보라매컵에 문제를 출제하기 위해 서로 다른 가지 종류의 알고리즘 문제를 각각 개씩, 총 개 만들었다. 번째 알고리즘의 번째 문제의 난이도는 이다. 그러나 만든 문제를 모두 낼 만큼 대회 시간이 부족해서, 서로 다른 개의 알고리즘마다 문제를 하나씩, 총 개만 내려고 한다.
또한 용범이는 문제의 난이도가 급격하게 오르는 것을 막기 위해 난이도 커브를 최소화하려고 한다. 대회의 번 문제의 난이도를 라 할 때, 난이도 커브는 로 정의한다. 단, 일 때의 난이도 커브는 으로 정의한다.
용범이를 도와, 개의 문제를 적절한 순서로 배치했을 때 난이도 커브의 최솟값을 구하자.
입력
첫 번째 줄에 알고리즘의 개수 과 알고리즘마다 만든 문제 개수 가 공백으로 구분되어 주어진다.
이후 개의 줄에 걸쳐, 번째 줄에 번째 알고리즘의 번째 문제의 난이도를 나타내는 정수 가 공백으로 구분되어 주어진다.
출력
개의 문제를 적절히 배치했을 때 난이도 커브의 최솟값을 출력한다.