正如我所说的,我想通过辅助对角线“滚动”通过多维数组,我想要的输入是:(案例a)[它可以是C ++或Java,也没关系]
注意+编辑:订单不是随机的。它从底部的1开始并向上移动。
这可能吗?
如果不是那么至少有一半的代码? (案例b)
// Case a:
16 15 13 10
14 12 9 6
11 8 5 3
7 4 2 1
// Case b:
0 0 0 1
0 0 9 6
0 8 5 3
7 4 2 1
答案 0 :(得分:3)
你可以通过一个简单的循环(这是Java)来完成这个:
int size = 4;
int[][] matrix = new int[size][size];
// . . .
for (int i = 0; i < size; ++i) {
doSomethingWith(matrix[i][size - i - 1]);
}
答案 1 :(得分:1)
int[][] a={{7,6,4,1},{5,3,9,6},{2,8,5,3},{7,4,2,1}};
for(int i=0; i<a.length; i++)
{
for(int j=a[i].length-1; j>=a[i].length-(i+1); j--)
{
System.out.print(a[i][j]+",");
}
System.out.println();
}