Biorąc pod uwagę kwadrat dodatnich liczb naturalnych, napisz program, znajdź ścieżkę poziomą i pionową, a suma liczb wzdłuż nich będzie maksymalna. Pozioma ścieżka przechodzi od pierwszej do ostatniej kolumny i musi zwiększyć swoją pozycję kolumny jednym w każdym kroku. Pionowa ścieżka przechodzi od pierwszego do ostatniego wiersza i musi zwiększyć swoją pozycję wiersza jednym w każdym kroku. Ponadto pozycja rzędu na ścieżce poziomej może pozostać niezmieniona lub zmieniać się o jedną w obu kierunkach, podobnie w przypadku ścieżek pionowych.
Aby to zilustrować, poprawna ścieżka może być następująca:

Następująca ścieżka byłaby nieprawidłowa, ponieważ prowadzi do tyłu (i pozostaje w tym samym rzędzie w niektórych miejscach):

Następująca ścieżka byłaby równie nieprawidłowa, ponieważ zmienia pozycję wiersza o więcej niż jeden w jednym kroku:

Uwaga: Rozwiązanie powinno działać w akceptowalnym czasie.
Wejście
n standardowych linii wejściowych z n dodatnimi liczbami całkowitymi oddzielonymi spacją. 2 ≤ n ≤ 40. Każda linia kończy się przerwaniem linii. Liczby są na tyle małe, że maksymalna suma mieści się w 32-bitowej liczbie całkowitej ze znakiem.
Wynik
Maksymalne sumy poziomych i pionowych ścieżek (w tej kolejności) oddzielone pojedynczym odstępem.
Przykładowe dane wejściowe 1
1 2
1 2
Próbka wyjściowa 1
3 4
Przykładowe wejście 2
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 3 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
2 1 4 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 4 1 3 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 4 1 2 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 5 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
Próbka wyjściowa 2
37 35
Przykładowe dane wejściowe 3
683 671 420 311 800 936
815 816 123 142 19 831
715 588 622 491 95 166
885 126 262 900 393 898
701 618 956 865 199 537
226 116 313 822 661 214
Próbka wyjściowa 3
4650 4799
Dla Twojej wygody przygotowaliśmy kilka przypadków testowych w bash (dzięki Ventero ) i PowerShell, przez które możesz uruchomić swój program. Wywołanie to:, <test> <command line>więc coś w stylu ./test python paths.pylub ./test.ps1 paths.exe. Baw się dobrze :-)
bashskrypt testowy! Chciałbym, żeby wszystkie gry w golfa były takie.