- 1、本文档共16页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
《循环赛日程表网上搜索各种结果
分治法
#define????MAXN????64??
//日程表数组??
int????calendar[MAXN?+?1][MAXN];??
void????Round_Robin_Calendar()??
{??
????int?i,j,m,number,p,q;??
????printf(输入选手个数:(注意:2^k)?\n);??
????scanf(%d,number);??
????//预置两位选手的比赛日程表://第i位选手第j天与第calendar[i][j]位选手比赛??
????calendar[1][1]?=?2;????????//第1位选手第1天与第2位选手比赛??
????calendar[2][1]?=?1;????????//第2位选手第1天与第1位选手比赛??
????m?=?1;??
????p?=?1;??
????while(m??number)??
????{??
????????m?++;??
????????p?+=?p;?? //p是选手总数的一半,q是选手总数
????????q?=?2?*?p;????//为2^m位选手安排比赛日程??
????????//填充日程表的左下角??
????????for(i?=?p?+?1;i?=?q;i++)??
????????????for(j?=?1;j=?p?-?1;j++)??
????????????????calendar[i][j]?=?calendar[i?-?p][j]?+?p;//左下角的内容?=?左上角的对应项加上数
??
????????//填充日程表的右上角??
????????//填充日程表的右上角的第
????????calendar[1][p]?=?p?+?1;??????????
????????for(i?=?2;i?=?p;i++)??
????????????calendar[i][p]?=?calendar[i?-?1][p]?+?1;??
????????//填充日程表的右上角的其他列,参照前一列填充当前列[循环轮转算法]??
????????for(j?=?p?+?1;j??q;j++)??
????????{??
????????????for(i?=?1;i??p;i++)??
????????????????calendar[i][j]?=?calendar[i?+?1][j?-?1];??
???????????? calendar[p][j]?=?calendar[1][j?-?1];??
????????}??
????????//填充日程表的右下角??
????????for(j?=?p;j??q;j++)??
????????????for(i?=?1;i?=?p;i++)??
????????????????calendar[calendar[i][j]][j]?=?i;?? ??//关键语句??
printf(循环赛分配后数组是:\n);??
????????for(i?=?1;i?=?q;i++)??
????????{??
????????????for(j?=?1;j??q;j++)?
????????????????printf(%4d,calendar[i][j]);??
????????????printf(\n);??
????????}??
????????printf(\n);??
????}??//while
}??
//:====================“循环赛日程安排”问题的分而治之解决算法?
int?main(int?argc,?char*?argv[])??
{??
????Round_Robin_Calendar();??
???printf(?应用程序运行结束!?);??
????return?0;??
}?
#include iostream
using namespace std;
#define TABLE_SIZE 8
int table[TABLE_SIZE][TABLE_SIZE];
void Creattable(int r1,int c1,int r2,int c2,int size)
{
int i,j;
int halfsize=size/2;
if(size1)
Creattable(0,0,
您可能关注的文档
- 《彩电基础知识篇.doc
- 《初中化学复分解反应方程式总结.doc
- 《彩盒车间生产流程.doc
- 《初中化学实验.doc
- 《彩砂种类及应用技术.doc
- 《初中化学总复习优生培养练习四120310.doc
- 《彩色氧化铝线.docx
- 《初中化学总复习基础部分.doc
- 《初中化学总复习详细提纲.doc
- 《初中化学总复习设计.doc
- 延期续签合同协议.docx
- 高考数学考点第八章概率与统计54随机抽样.pptx
- 高考数学考点第二章函数导数及其应用9指数与指数函数.pptx
- 8.3探寻连通器课件 --2024-2025学年北师大2024版物理八年级下册.pptx
- 班级管理评比:建立有效的激励机制.docx
- 高考数学考点第二章函数导数及其应用5函数的定义域和值域.pptx
- 一年级道德与法治下册整洁教学设计.docx
- 高考数学考点第二章函数导数及其应用10对数与对数函数.pptx
- 8.4.1澳大利亚(第1课时)课件 2024-2025学年七年级地理下册同步教学课件(商务星球版版2024).pptx
- 教师考编必备(教育学心理学).pptx
文档评论(0)