标题:关于赛程安排的问题,求思路和提示……
只看楼主
S_Ringo
Rank: 4
来 自:歌舞伎町
等 级:业余侠客
帖 子:94
专家分:230
注 册:2012-4-15
结帖率:100%
已结贴  问题点数:30 回复次数:11 
关于赛程安排的问题,求思路和提示……
本人球迷一枚,对意甲感兴趣,想尝试一下写一个函数,就是输入各个球队名字,然后可以自动编排出足球联赛赛程……
比如,我输入 AC milan、Intel、Roma、……、Lazio等等20支球队的名字,然后自动生成

NO.1:AC milan VS Intel
      ……
      ……
      Roma     VS Lazio

NO.2:……VS……
      ……VS……

其实就是赛程啦……

想了许久,找不到一个比较好的算法,

求大神指教……不甚感激!

只用指教算法或思路即可,编程部分我自己去尝试一下……
搜索更多相关主题的帖子: milan Intel 
2012-07-05 12:38
随风飘荡
Rank: 7Rank: 7Rank: 7
等 级:黑侠
威 望:3
帖 子:208
专家分:598
注 册:2011-9-9
得分:5 
请原谅我,intel是英特尔吗?

我是没看过足球,最常见的比赛就是那种随机配对,胜组再随机配对,然后直到胜者出来这样嘛。

不过要考虑的是如果20队就会出现胜组只有5队这样的情况,这个要怎么处理呢....可以先配2组比赛抽出2队决定晋级,然后剩余2队负组加空出来的一队进行混战?
如果要公平是不是要每个球队都和所有球队都进行一场比赛,按照最终的胜场往上抽一定量的胜组再如此重复呢,但是这样赛程会变的十分长…………


2012-07-05 15:05
pauljames
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:千里冰封
威 望:9
帖 子:1555
专家分:10000
注 册:2011-5-8
得分:5 
用组合算法试试看

经常不在线不能及时回复短消息,如有c/单片机/运动控制/数据采集等方面的项目难题可加qq1921826084。
2012-07-05 19:27
S_Ringo
Rank: 4
来 自:歌舞伎町
等 级:业余侠客
帖 子:94
专家分:230
注 册:2012-4-15
得分:0 
回复 2楼 随风飘荡
额,Intel是国际米兰……
其实就是每支球队都要和另外19支球队分别进行一场比赛……
2012-07-06 17:28
weipeng1217
Rank: 5Rank: 5
等 级:职业侠客
帖 子:175
专家分:386
注 册:2012-1-12
得分:2 
我表示对于球赛方面我是个白痴。。
可以这样理解么?要让这20个球队,每个队都和其他19个对要比赛一场么?输出赛程?

C坛友交流群 群号:161091913 ,欢迎经常在线的朋友加入,一起学习,一起进步。。
2012-07-06 21:37
S_Ringo
Rank: 4
来 自:歌舞伎町
等 级:业余侠客
帖 子:94
专家分:230
注 册:2012-4-15
得分:0 
回复 5楼 weipeng1217
恩,就是这样子的,嘿嘿……
2012-07-09 14:33
yuma
Rank: 11Rank: 11Rank: 11Rank: 11
来 自:银河系
等 级:贵宾
威 望:33
帖 子:1883
专家分:2904
注 册:2009-12-22
得分:2 
多写几个赛程,用GOTO,随机选择,不也可以。

心生万象,万象皆程序!
本人计算机知识网:http://bbs.为防伸手党,本站已停止会员注册。
2012-07-09 14:52
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
得分:0 
回复 楼主 S_Ringo
全循环比赛,你有什么算法搞不定了?

授人以渔,不授人以鱼。
2012-07-09 19:02
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
得分:8 
看看这个图,你应该明白的:


授人以渔,不授人以鱼。
2012-07-09 19:23
可爱的菊花姬
Rank: 2
等 级:论坛游民
帖 子:3
专家分:11
注 册:2012-7-7
得分:8 
# include <stdio.h>
#include <string.h>
  main ()
 {
     char s[20][30]={{"a"},{"b"},{"c"},{"d"},{"e"},{"f"}.............,{"g"},{"h"}};
int i,j;

for(i=0;i<20;i++)
{for(j=0;j<20;)
{if(strcmp(s[j],"h")==0&&strcmp(s[i],"h")==0)
break;
else    if(strcmp(s[i],s[j])==0)
{j++;
printf("%svs%s\n",s[i],s[j]);
j++;}
else {
printf("%svs%s\n",&s[i],&s[j]);
j++;}
}
}
 }
h为最后球队的名字,要比较,不然结尾会出现乱码
2012-07-09 21:18



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-372794-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.335611 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved