AcWing 753. 平方矩阵 I
题目描述
AcWing 753. 平方矩阵 I
思路
每个点处的值为该位置到上下左右四个边界距离的最小值。
代码
import java.util.Scanner;public class Main{public static void main(String []args){Scanner sc=new Scanner(System.in);while(true){int n=sc.nextInt();if(n==0) break;for(int i=0;i<n;i++){for(int j=0;j<n;j++){int x=Math.min(j+1,n-j);int y=Math.min(i+1,n-i);int z=Math.min(x,y);System.out.printf("%d ",z);}System.out.printf("\n");}System.out.printf("\n");}}}
AcWing 754. 平方矩阵 II
题目描述
AcWing 754. 平方矩阵 II
思路
第iii行第jjj列的值为∣i−j∣+1|i-j|+1∣i−j∣+1
因为主对角线上,iii和jjj的差为000,值为111
依次平移,变化的是iii和jjj的差值,相应位置的值也在改变
代码
import java.util.Scanner;public class Main{public static void main(String []args){Scanner sc=new Scanner(System.in);while(true){int n=sc.nextInt();if(n==0) break;for(int i=0;i<n;i++){for(int j=0;j<n;j++){int z=Math.abs(i-j)+1;System.out.printf("%d ",z);}System.out.printf("\n");}System.out.printf("\n");}}}
AcWing 755. 平方矩阵 III
题目描述
AcWing 755. 平方矩阵 III
思路
直接算就完事了
代码
import java.util.Scanner;public class Main{public static void main(String []args){Scanner sc=new Scanner(System.in);while(true){int n=sc.nextInt();if(n==0) break;for(int i=0;i<n;i++){for(int j=0;j<n;j++){int z=(int)Math.pow(2,i+j);System.out.printf("%d ",z);}System.out.printf("\n");}System.out.printf("\n");}}}