首先记住两点:
1.不要被题目的这句话给迷惑了
这道题的 操作最小次数就是 N(几块硬币)
2.仔细看结论的话,会发现第一行只有第一个没有变,第二行只有第二个没有变,剩下的依次类推。
首先先定义一个数组 已知 N <100, 然后就开一个大小为101 int数组,
然后两层循环,当i != j 的时候 ,就让arr[j ] 取反
最后上代码:
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int n = scanner.nextInt();
int arr[] = new int[101];
System.out.println(n);
for(int i = 0; i < n; i++) {
for(int j = 0 ; j < n; j++) {
if(i != j) {
arr[j] = 1 -arr[j];
}
System.out.print(arr[j]);
}
System.out.println();
}
}
}