题目852
1 2 3 4 5 12 13 14 6 11 15 7 10 8 9跟蛇形填数一样,只是填数要求按照三角形填。注意每组数据之间用空行隔开
2 5 4
1 2 3 4 5 12 13 14 6 11 15 7 10 8 9 1 2 3 4 9 10 5 8 6 7
1 /*蛇形填数(二)*/ 2 /*#include<stdio.h> 3 int main() 4 { 5 int a,b,c,d,n,aa,T; 6 int yi[1001][1001]; 7 scanf("%d",&T); 8 while(T--) 9 { 10 int sum=1; 11 scanf("%d",&n); 12 for(a=0;a<=(n-1)/2;a++) 13 { 14 for(b=a;b<=n-a-a-1;b++)//左/ 15 yi[a][b]=sum++; 16 for(b=n-2-a-a,aa=a+1;b>=a;b--,aa++)//对角/ 17 yi[aa][b]=sum++; 18 for(b=n-a-2-a;b>a;b--)//上/ 19 yi[b][a]=sum++; 20 } 21 for(c=0;c<n;c++) 22 { 23 for(d=0;d<n-c;d++) 24 printf("%d ",yi[c][d]); 25 printf("\n"); 26 } 27 } 28 }*/
主要从三个方向来进行填数,注意边界。。。
原文:http://www.cnblogs.com/xiaoyunoo/p/3513622.html