#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. [通用技术]在不同语言中用协程实现全排列算法(C++/Lua/Python/C#)
  2. (0026)iOS 开发之模块化封装初步实践
  3. asp.net源碼坊論壇上線
  4. sessionFactory.getCurrent()和sessionFactory.openSession()的区别
  5. 手把手教你Homestead安装,并填坑!!
  6. 配置解决中文乱码的过滤器
  7. solr mysql 分词_solr学习篇(二) solr 分词器篇
  8. LG_2051_[AHOI2009]中国象棋
  9. [文摘20070930]每个人都需要掌握的18个人情世故
  10. Dynamics AX2012 根据表字段查找对应的字段值
  11. Windows NT 架构
  12. 重置Win10网络网卡命令
  13. 时空大数据面临的挑战与机遇
  14. 【多媒体基础知识】 --- 什么是流媒体技术
  15. 01、ZigBee 开发教程之进阶篇—BasicRF无线点对点传输协议
  16. 朴素贝叶斯、贝叶斯网络分类器
  17. c语言strcpy两字符串长度不同,(C语言)自己写字符串操作函数(一)——strlen/strcpy/strcat/strcmp/st...
  18. 中科院上海王二涛组招聘助理研究员1名-植物微生物组学
  19. 我与校花同桌之间的金钱交易(又名:戏说值传递与引用传递,这还看不懂你来打我)
  20. 家里公司自动ip切换,批处理

热门文章

  1. Adobe CC 2019 大师版 v9.0 for Win 最新版下载-赢政天下版
  2. raptor阶乘相加流程图_从键盘输入正整数n的值,计算n的阶乘,例如:输入5,输出120。请据此画出程序流程图。 (上传Raptor软件流程图和运行结果的截图)_学小易找答案...
  3. 这个颈托火了!比围脖还舒服实用!一级医疗器械认证!每天5分钟,牵引矫正、热敷艾灸,脖子灵活了,气质都变好了!...
  4. mysql基本查询语句课件_MySQL基本查询语句练习
  5. 用计算机术语赞美老师,赞美老师的优美排比句
  6. Python: 给csv/excel文件添加表头
  7. 荣耀发布首款全面屏四摄手机 掀起千元机拍照革命
  8. iOS_显示图片原本颜色
  9. 华为MateBook笔记本对比微软Surface Pro 4,谁更好?
  10. ADC驱动程序XPT2046(四-十二)