zhouyee

【动态规划】循环赛日程表

 1 #include <stdio.h>
 2 #include <stdlib.h>
 3 int a[10000][10000];
 4 void huan(int row,int len)
 5 {
 6     int i,j;
 7     for(i=0; i<len/2; i++)
 8     {
 9         for(j=0; j<len/2; j++)
10         {
11             a[row+i+len/2][j+len/2] = a[row+i][j];
12         }
13     }
14     for(i=0; i<len/2; i++)
15     {
16         for(j=0; j<len/2; j++)
17         {
18             a[row+i][j+len/2] = a[row+i+len/2][j];
19         }
20     }
21 }
22 void fd(int row,int len)
23 {
24     if(len!=0)
25     {
26         fd(row,len/2);
27         fd(row+len/2,len/2);
28         huan(row,len);
29     }
30 
31 }
32 
33 int main()
34 {
35     int i,j,n,m=1;
36 
37     scanf("%d",&n);
38     for(i=0; i<n; i++)
39     {
40         m=m*2;
41     }
42     for(i=0; i<m; i++)
43     {
44         a[i][0]=i+1;
45     }
46     fd(0,m);
47     for(i=0; i<m; i++)
48     {
49         for(j=0; j<m-1; j++)
50         {
51             printf("%d ",a[i][j]);
52         }
53         printf("%d",a[i][j]);
54         printf("\n");
55     }
56 
57     return 0;
58 }

 

发表于 2015-04-10 15:15  周也  阅读(307)  评论(0编辑  收藏  举报
 

分类:

技术点:

相关文章:

  • 2021-11-01
  • 2022-12-23
  • 2021-11-01
  • 2021-10-12
  • 2021-11-06
猜你喜欢
  • 2021-10-12
  • 2021-08-24
相关资源
相似解决方案