题目:给一个矩阵,如果矩阵每行选一个元素,这些元素拿来异或结果大于0,则输出这些列下标
先检查第一列是不是符合,符合就直接输出第一列,不符合就在其他列中找和第一列不同的元素,找到了就输出
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
while (in.hasNextInt()) {
int n = in.nextInt(), m = in.nextInt();
boolean flag = false;
int[][] g = new int[n][m];
for (int i = 0; i < n; i++) {
for (int j = 0; j < m; j++) {
g[i][j] = in.nextInt();
}
}
int res = 0;
for (int i = 0; i < n; i++)
res ^= g[i][0];
if (res != 0) {
flag = true;
System.out.println("TAK");
for (int i = 0; i < n; i++)
System.out.print(1 + " ");
System.out.println();
}
else
for (int i = 0; i < n; i++)
if (!flag)
for (int j = 1; j < m; j++) {
if (g[i][j] != g[i][0]) {
System.out.println("TAK");
flag = true;
for (int k = 0; k < n; k++) {
if (k != i)
System.out.print(1 + " ");
else
System.out.print((j+1) + " ");
}
System.out.println();
break;
}
}
if (!flag)
System.out.println("NIE");
}
}
}