시간 제한 메모리 제한 제출 정답 맞은 사람 정답 비율
1 초 256 MB 1 1 1 100.000%

문제

Hej, ludzie! Cuda w tej budzie! Chyba zwariowałem, pieniądze rozdaję! - Bitocy zarabia na życie jako kuglarz na jarmarku w Bajtowej.

Zaprasza przechodniów do specyficznej zabawy. Na stoliku w rzędzie stoi n kubków z numerami 1, 2, ..., n, pod niektórymi schowane są kauczukowe kulki. Jeśli grający dokładnie odgadnie, które to kubki, to dostaje wielkiego pluszowego misia. Bitocy odpłatnie udziela grającemu podpowiedzi. Za cij bajtogroszy Bitocy gotów jest zdradzić, jaka jest parzystość liczby kulek schowanych pod kubkami o numerach i, i+1, ..., j.

Bajtazar przyszedł na jarmark z Bajtyną - najładniejszą panną w całej Bajtowej. Bardzo chciałby wygrać dla niej misia. Nie zamierza przy tym narażać się na kompromitację i zgadywać, nie będąc pewnym odpowiedzi. Będzie płacił za podpowiedzi tak długo, aż zebrane informacje pozwolą mu ustalić z całą pewnością, pod którymi kubkami znajdują się kulki.

Znając ceny wszystkich możliwych podpowiedzi, zastanawia się teraz, ile maksymalnie będzie go to kosztować. Ściślej rzecz biorąc, chciałby znać najmniejszą taką liczbę k, że istnieje strategia zadawania pytań, która niezależnie od odpowiedzi Bitocego pozwala na zlokalizowanie kulek za co najwyżej k bajtogroszy.

입력

Pierwszy wiersz wejścia zawiera jedną liczbę całkowitą n (1 ≤ n ≤ 2000), oznaczającą liczbę kubków. Po nim następuje opis kosztów zapytań o poszczególne przedziały. W (i+1)-szym wierszu wejścia (dla 1 ≤ i ≤ n) znajduje się n+1-i liczb całkowitych, oznaczających koszty poszczególnych podpowiedzi.

Koszt cij (1 ≤ i ≤ j ≤ n, 1 ≤ cij ≤ 109) zapytania o przedział od i-tego do j-tego kubka włącznie pojawia się na wejściu jako (j+1-i)-ta liczba w (i+1)-szym wierszu.

출력

Twój program powinien wypisać jedną liczbę całkowitą będącą maksymalnym kosztem ustalenia położenia kulek dla optymalnej strategii zadawania pytań.

예제 입력 1

5
1 2 3 4 5
4 3 2 1
3 4 5
2 1
5

예제 출력 1

7