程序片段

名企笔试:美团2016招聘笔试(二维数组打印)
题目描述
有一个二维数组(n*n),写程序实现从右上角到左下角沿主对角线方向打印。
给定一个二位数组arr及题目中的参数n,请打印结果数组。
测试样例:
[[1,2,3,4],[5,6,7,8],[9,10,11,12],[13,14,15,16]],4
返回:
[4,3,8,2,7,12,1,6,11,16,5,10,15,9,14,13]

/*问题等价于打印出直线族j=i+k(-n<k<n)在由(0<=i,j<n)决定的正方形内的点*/
for(int k=n-1;k>-n;k--){
		for(int i=0;i<n;i++){
			if(i+k>=0&&i+k<n)
			printf("%d ",arr[i][i+k]);
		}
	}
posted @ 2017-06-06 10:18  findneo  阅读(195)  评论(0编辑  收藏  举报