n = gets.to_i a = gets.split.map(&:to_i) b = (1..n).map { gets.split.map(&:to_i) } ans, bit = (1...1 << n).map { |bit| x = (0...n).select { |i| bit[i] == 1 } [x.sum { |i| a[i] } + x.combination(2).sum { |(i, j)| b[i][j] }, x] }.max puts ans, bit.map{ _1 + 1 }.join(' ')