UVa1418 - WonderTeam(构造法)

题意:有n个球队,每个球队之间打两场。赢一场得3分,平得1分,输不得分。分数为p的球队排名为1+分数比p大的球个数。要求选取一个梦之队,赢的场数最多,进球数最多,丢球最少。问梦之队的最糟排名。

思路:因为进球数,丢球数无限制,主要考虑赢的场数。每个队总共会打2n-2场比赛。如果wonderTeam只赢一场,其它都是平局,显然梦之队是第一名。梦之队赢2场,其它只赢1场(赢的是梦之队)

梦之队:赢2场,平n-3场,输n-1场,得分n+3

梦之队赢的两个队:赢1场,平2n-4场,输1场,得分2n-1

其它:赢1场,平2n-3场,输0场,得分2n

如果梦之队是最后一名。则n+3<2n-1 => n > 4

如果梦之队不第一名。n+3 < 2n => n > 3

具体代码参考:

https://github.com/wuli2496/OJ/tree/master/UVa/1418%20WonderTeam

 

你可能感兴趣的:(训练指南,OJ)