n=gets.to_i m=[] n.times.each{|i| a=gets.split.map &:to_i (i+1...n).each{|j| m<<[a[j],i,j] } } r=0 (n/2).times{ x,*a=m.max r+=x (m.size-1).downto(0){|i| if !(m[i][1,2]&a).empty? m.delete_at(i) end } } p r