#include<stdio.h>
#include<math.h>
void gametable(int k)
{       int a[100][100];int n,temp,i,j,p,t;n=2;//k=0两个参赛选手日程可以直接求得a[1][1]=1;a[1][2]=2;a[2][1]=2;a[2][2]=1;for(t=1;t<k;t++)//迭代处理,依次处理2^n....2^k个选手的比赛日程{temp=n;n=n*2;//填左下角元素for(i=temp+1;i<=n;i++)for(j=1;j<=temp;j++)a[i][j]=a[i-temp][j]+temp;//左下角和左上角元素的对应关系for(i=1;i<=temp;i++)//将左下角元素抄到右上角for(j=temp+1;j<=n;j++)a[i][j]=a[i+temp][(j+temp)%n];for(i=temp+1;i<=n;i++)//将左上角元素抄到右下角for(j=temp+1;j<=n;j++)a[i][j]=a[i-temp][j-temp];}printf("参赛人数为:%d\n(第i行第j列表示和第i个选手在第j天比赛的选手序号)\n",n);for(i=1;i<=n;i++)for(j=1;j<=n;j++){printf("%d ",a[i][j]);if(j==n)printf("\n");}
}
void main()
{int k;printf("比赛选手个数为n(n=2^k),请输入参数K(K>0):\n");scanf("%d",&k);if(k!=0)gametable(k);}

循环赛日程表--C语言相关推荐

  1. c语言-网球循环赛日程表

    网球循环赛日程表 问题描述: 设有n个运动员要进行网球循环赛.设计一个满足以下要求的比赛日程表: (1)每个选手必须与其他n-1个选手各赛一次. (2)每个选手一天只能赛一次 (3)当n是偶数时循环赛 ...

  2. 循环赛日程表算法分析c语言,循环赛日程表

    该算法的核心问题是合并问题,因为把一个数分成2半,可能得到2种情况:①等分:②一组比另一组多一人:在这里我们巧妙的设计了一下,当一组比另一组多一人时,我们假设了一个虚拟选手,让他参与匹配,最后再把出现 ...

  3. 循环赛日程表非递归Java_王晓东《算法设计与分析》课件.ppt

    <王晓东<算法设计与分析>课件.ppt>由会员分享,可在线阅读,更多相关<王晓东<算法设计与分析>课件.ppt(356页珍藏版)>请在人人文库网上搜索. ...

  4. 2.11 循环赛日程表

    博主简介:一个爱打游戏的计算机专业学生 博主主页: @夏驰和徐策 所属专栏:算法设计与分析 目录 书本内容: 我的理解: 更优化的算法: 总结 1.注意实现问题 2.当用C语言和C++实现循环赛日程表 ...

  5. python【数据结构与算法】循环赛日程表(分治)

    文章目录 1 概述 2 解决 1 概述 设计一个满足以下要求的比赛日程表: 每个选手必须与其他n-1个选手各赛一次: 每个选手一天只能赛一次: 循环赛一共需要进行n-1天. 由于n=2^k个运动员,显 ...

  6. 3.2.4循环赛日程表(递归与分治)

    目录 1.问题描述 2.算法分析 算法 3.摘要 参考书籍 1.问题描述 设有个运动员要进行网球循环赛. 现要设计一个满足以下要求的比赛日程表. (1)每个选手必须与其他个选手各比赛一次: (2)每个 ...

  7. 任意人数的循环赛日程表 分治 非分治 c++

    循环赛日程表 要求 设计一个满足以下要求的比赛日程表: 每个选手必须与其他n-1个选手各赛一次: 每个选手一天只能赛一次: 当n是偶数时,循环赛进行n-1天,当n是奇数时,循环赛进行n天: 举例 4位 ...

  8. 分治法解决循环赛日程表

    分治法解决循环赛日程表 问题描述 设有n=2^k个运动员要进行羽毛球循环赛,现要设计一个满足以下要求的比赛日程表: (1)每个选手必须与其他n-1个选手各赛一次. (2)每个选手一天只能比赛一次. ( ...

  9. 循环赛日程表 (递归与分治)

    文章目录 1.题目 2.问题分析 3.什么是分治 4.算法实现思路 1.对表进行分析 2.对表的实现 1.递归 2.循环 5算法实现代码 1.递归 2.循环 6.时间\空间复杂度 1.递归 1.空间复 ...

最新文章

  1. Tensorflow—继续优化,使MNIST准确率98%以上
  2. 自建html网页,幽灵自建的html5 的模板文件!
  3. 「我去,这也能行!」令人惊叹的8个深度学习应用
  4. Heron:来自Twitter的新一代流处理引擎应用篇
  5. [数据结构]-循环队列
  6. centos7永久修改ip地址
  7. java 英文题_java英文试题
  8. 极简试用期转正述职报告PPT模板
  9. 【阅读笔记】联邦学习实战——联邦学习智能用工案例
  10. java long string 转换_Java long 转成 String的实现
  11. PCI DSS认证到底难在何处?
  12. 用计算机演奏香蜜的歌曲,杨紫新剧《蜜汁炖鱿鱼》上演计算机天才,搭档李现CP感爆棚...
  13. windows10下载链接
  14. 二叉搜索树、平衡二叉搜索树和红黑树
  15. Win8怎么加快桌面图标刷新速度?提高图标刷新速度的方法解析
  16. r语言remarkdown展示图_R语言knitr之rmarkdown
  17. 关于用eclipse无法出现相关内容提示的问题
  18. 软考-信息系统项目管理师-项目沟通管理和干系人管理
  19. 酷睿i7和i5对计算机专业要求,i5和i7有什么区别?电脑CPU i7和i5的区别分享
  20. 计算机博士谷歌要吗,计算机博士指责谷歌科学欺诈 遭遇网友批驳

热门文章

  1. linux图形界面历史,桌面应用|用 ROX 桌面重温 Linux 历史
  2. 英语常用日常交际用语
  3. 利用java的PriorityQueue类实现堆排序(java实现)
  4. CSGO由于电脑下载了easyconnect打不开了怎么办?
  5. MySQL 调用存储过程 错误代码: 1366 Incorrect string value: '\xE7\x8E\x8B\xE4\xBA\x94'
  6. Docker国内镜像源介绍与更换
  7. js 的中文转换为拼音
  8. 我的Python实例一——BIM指数计算
  9. 虹科工业数智化展厅集锦
  10. 怎么在echarts上多个y轴