어느 대학교의 네트워크는 N대의 컴퓨터로 이루어져 있다. 시스템 관리자들은 모든 노드 쌍 사이의 트래픽을 측정한 뒤, 두 부분 사이를 오가는 트래픽이 최소가 되도록 네트워크를 두 개의 하위 네트워크로 나누어 두었다.
대학교에서 퇴학당한 것에 앙심을 품은 학생 Vasya는 정반대의 일을 하려 한다. 그는 네트워크를 장악한 뒤, 두 하위 네트워크 사이의 트래픽이 최대가 되도록 컴퓨터들을 다시 배치하고 싶어 한다. 이 최악의 분할을 계산하는 문제를 스스로 풀 수 없어서, 그는 당신에게 도움을 청한다.
트래픽은 행렬 C로 주어지며, Cij는 노드 i와 노드 j 사이에 오가는 데이터의 양이다. 이 행렬은 대칭이고(Cij=Cji) 자기 자신과의 트래픽은 없다(Cii=0). N개의 노드를 서로소인 두 집합 A와 B로 나누어 다음 값을 최대로 만들어라.
∑i∈A,j∈BCij.
첫째 줄에 노드의 개수 N이 주어진다 (2≤N≤20).
이어지는 N개의 줄에는 각각 N개의 정수가 공백으로 구분되어 주어진다. i번째 줄의 j번째 정수는 Cij이다 (0≤Cij≤10000). 행렬은 대칭이며 대각 성분은 0이다.
두 하위 네트워크 사이를 오가는 트래픽의 최댓값을 정수 하나로 출력한다.