// CERC 2012 // Problem A: Kingdoms // O(n^2*2^n) solution // Author: Jakub Pachocki import java.io.*; import java.util.*; class Solver { void solve() { Scanner in = new Scanner(System.in); int nCases = in.nextInt(); for (int testCase = 0; testCase < nCases; ++testCase) { int n = in.nextInt(); int[][] owes = new int[n][n]; for (int i = 0; i < n; ++i) { for (int j = 0; j < n; ++j) { owes[i][j] = in.nextInt(); } } boolean[] canSurvive = new boolean[1 << n]; canSurvive[(1 << n) - 1] = true; for (int mask = (1 << n) - 1; mask > 0; --mask) { if (canSurvive[mask]) { for (int i = 0; i < n; ++i) { if (((mask >> i) & 1) != 1) { continue; } int debt = 0; for (int j = 0; j < n; ++j) { if (((mask >> j) & 1) == 1 ) { debt += owes[i][j]; } } if (debt > 0) { canSurvive[mask ^ (1 << i)] = true; } } } } int nSurvivors = 0; for (int i = 0; i < n; ++i) { if (canSurvive[1 << i]) { if (nSurvivors > 0) { System.out.print(' '); } System.out.print(i + 1); ++nSurvivors; } } if (nSurvivors == 0) { System.out.print(0); } System.out.println(); } in.close(); } } public class A { public static void main(String[] args) { (new Solver()).solve(); } }