Java 洛谷 P5461 赦免战俘讲解
生活随笔
收集整理的這篇文章主要介紹了
Java 洛谷 P5461 赦免战俘讲解
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
輸入輸出樣例
輸入
3
輸出
0 0 0 0 0 0 0 1
0 0 0 0 0 0 1 1
0 0 0 0 0 1 0 1
0 0 0 0 1 1 1 1
0 0 0 1 0 0 0 1
0 0 1 1 0 0 1 1
0 1 0 1 0 1 0 1
1 1 1 1 1 1 1 1
主要考點(diǎn)
遞歸
代碼實(shí)例:
import java.util.Scanner; public class Main{public static void main(String args[]) {Scanner scanner = new Scanner(System.in);int n = scanner.nextInt();int matrix[][] = new int[(int) Math.pow(2, n)][(int) Math.pow(2, n)];for (int i = 0; i < matrix.length; i++) {for (int j = 0; j < matrix.length; j++) {matrix[i][j] = 1;}}fanZhuan(matrix, 0, 0, matrix.length);for (int i = 0; i < matrix.length; i++) {for (int j = 0; j < matrix.length; j++) {System.out.print(matrix[i][j] + " ");}System.out.println();}scanner.close();}// 反轉(zhuǎn)函數(shù)public static void fanZhuan(int matrix[][], int x, int y, int r) {for (int i = x; i < x + r / 2; i++) {for (int j = y; j < y + r / 2; j++) {matrix[i][j] = 0;}}if(r/2==1) {return;}//右上角fanZhuan(matrix,x+r/2,y,r/2);//左下角fanZhuan(matrix,x,y+r/2,r/2);//右下角fanZhuan(matrix,x+r/2,y+r/2,r/2);} }總結(jié)
以上是生活随笔為你收集整理的Java 洛谷 P5461 赦免战俘讲解的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Java数字反转(编程题)
- 下一篇: Java 中类的比较与排序方法(应用Co