任意个选手的赛程安排.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
任意个选手的赛程安排

#defineMAX 500 class roundRobin { friend schedule ( int) ; p rivate: intmax;    / /参赛选手人数 /3 赛程安排表. 数组a的第0列a [ i ] [ 0 ]中存储第 i个选手的实际编号, 第i个选手的编号实为i + 1, a [ i ] [ j] 中存储编号为i的选手在第j天的对手的编号. 3 / int a [MAX ] [MAX ]; void RRSchedule ( int, int) ; } /3 本函数将生成编号从start开始的n个队员的循环 赛日程表. 3 / void roundRobin: : RRSchedule ( int start, int n) { int m, i, j, icomp, temp; / /如果只有2个选手,则直接安排赛程 if ( n == 2) { a [ start ] [ 1 ] = a [ start + 1 ] [ 0 ]; a [ start + 1 ] [ 1 ] = a [ start ] [ 0 ]; } else  / /否则,选手多于2人 { /3 若n为奇数,则添加编号为0的匿名选手,递归 调用自身求解3 / ·124· 2007  李健勇等:任意数量选手的循环赛赛程分治算法 if ( n%2 == 1) { temp = a [ start + n ] [ 0 ]; / /将第n + 1个选手编号置0 a [ start + n ] [ 0 ] = 0; cycle ( start, n + 1) ; / /恢复原来编号 a [ start + n ] [ 0 ] = temp;  }   /3 若n为偶数,则平分为2个小组,各自安排前m 天的 赛程3 / if ( n%2 = = 0) { m = n /2; cycle ( start,m ) ; cycle ( start +m, m ) ;   /3 若m 为奇数,前m 天的比赛中, 2小组内进行的比赛 每天都恰有1个人轮空,因此先安排2组中轮空的2个选手 比赛,然后安排第m + 1天到第n - 1天的赛程,第1组的第i 个选手在第j天的对手是第二组的第( i + j - 1) %m + 1个, 即大组中第( i + j - 1) %m +m + 1个选手3 / if (m %2 == 1) { for ( i = c; i c +m; i + + ) for ( j = 1; j =m; j + + ) if ( a [ i ] [ j] = = 0) {  a [ i ] [ j] = a [ i +m ] [ 0 ];  a [ i +m ] [ j] = a [ i ] [ 0 ]; } for ( i = 1; i =m; i + + ) for ( j =m + 1; j n; j + + ) {  icomp = ( i + j - 1) %m +m + 1;  a [ start + i - 1 ] [ j] =   a [ icomp + start - 1 ] [ 0 ];  a [ start + i_comp - 1 ] [ j] =   a [ i + start - 1 ] [ 0 ]; }   }  / / end if (m%2 == 1)   /3 若m 为偶数, 安排第m 天到第n - 1 天的赛 程3 / if (m %2 == 0) { for ( i = 1; i =m; i + + ) for ( j =m; j = n - 1; j + + ) {  icomp = ( i + j - 1) %m +m + 1;  a [ start + i - 1 ] [ j] =   a [ start + icomp $ 1 ] [ 0 ];  a [ start + icomp - 1 ] [ j] =   a [ start + i - 1 ] [ 0 ]; } }  / / end if (m %2 == 0 } end if ( n%2 == 0) } / / end else }文 - 汉语汉字 编辑词条 文,wen,从玄从爻。天地万物的信息产生出来的现象、纹路、轨迹,描绘出了阴阳二气在事物中的运行轨迹和原理。 故文即为符。上古之时,符文一体。 古者伏羲氏之王天下也,始画八卦,造书契,以代结绳(爻)之政,由是文籍生焉。--《尚书序》 依类象形,故谓之文。其后形声相益,即谓之字。--《说文》序》 仓颉造书,形立谓之文,声具谓之字。--《古今通论》 (1) 象形。甲骨文此字象纹理纵横交错形。文是汉字的一个部首。本义:花纹;纹理。 (2) 同本义 [figure;

您可能关注的文档

文档评论(0)

rovend + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档