您的位置:首页 > 其它

数字游戏

2014-05-10 15:31 176 查看
网上看到这样一道面试题,于是没事干的时候就把它给实现了。

public class Test3 {

/* 蛇形矩阵
【样例输出】
1 3 6 10 15
2 5 9 14
4 8 13
7 12
11
*/

public static void main(String[] args) {
Test3 t=new Test3();
t.test(8);
}

public void test(int n) {
int arr[][]=new int

;
arr[0][0]=1;
int column=n;
for (int i = 0; i < n; i++) {
for (int j = 0; j < column; j++) {
if(j==0){//第一列
if(i>0)
arr[i][j]=arr[i-1][j]+i;
}else{
//一行中某列与前一列的关系
arr[i][j]=arr[i][j-1]+(i+1+j);
}
}
column-=1;
}

//输出
for (int i = 0; i < n; i++) {
for (int j = 0; j < n; j++) {
if(arr[i][j]!=0)
System.out.print(arr[i][j]+" ");
}
System.out.println(); //换行
}
}

}

运行效果如图:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息