运动会径赛排道次 help me!!(100分)

  • 主题发起人 主题发起人 Y.Z
  • 开始时间 开始时间
Y

Y.Z

Unregistered / Unconfirmed
GUEST, unregistred user!
运动会竞赛排道次,要求:
1、同一学校不能同组。
2、每一项2个名额。
3、学校之间安排随机。
请问各位大侠,应该怎么做。
 
排列组合,穷举的方法可以搞定。
 
其实很简单,把所有的运动员进行如下排序(同项):
学校11,学校21,...,学校n1,学校12,学校22,...学校n2;
然后挨个取进行分组,没加入一个运动员时要进行判断,该运动员所在的学校是否已经
出现:如果没有出现,加入;否则,这组已经完成,此运动员成为下一组的开始.
 
以学校为主,进行分组。
设每组n人,随机抽取n个非空的学校,然后每个学校中取1人。再从总人数中减去取走的人。
 
这个分数看来非我莫属了,我排过高考试场,这个问题应该说没什么难度:
假设每组n人,则先将所有选手按照学校排序,
然后就出来了:
第1组:1,n+1,2n+1,...
第2组:2,n+2,2n+2,...
...
第n组:n,n+n,2n+n,...

只要每个学校参加的人数不超过n,则一定不会有同校的两个人!
但是前提必须是先按学校排序!!!!

 
能给出程序吗?
 
多人接受答案了。
 

Similar threads

D
回复
0
查看
2K
DelphiTeacher的专栏
D
D
回复
0
查看
2K
DelphiTeacher的专栏
D
D
回复
0
查看
1K
DelphiTeacher的专栏
D
S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
后退
顶部