1418 - WonderTeam (贪心)

2014-11-24 07:27:11 · 作者: · 浏览: 6

题目链接:http://uva.onlinejudge.org/index.php option=com_onlinejudge&Itemid=8&page=show_problem&category=512&problem=4164&mosmsg=Submission+received+with+ID+12898267

题意:给n只队伍,每两队比两场,赢得3分,平1分,输0分,要选一个梦之队:赢最多,进球最多,失球最少。求梦之队最低排名。

思路:考虑梦之队赢两场,其他队各赢梦之队一场,剩下都为平局,这样赢场就能保证最多。然后让一场赢球为正无穷。输球都0-1输这样,而其他队输球为输2球这样就能保证进球最多输球最少了。

所以最后得分为 梦之队:赢2 输n -1 平n - 3 得分n + 3。

被赢的队伍:赢1 输1 平2n - 4 得分2n - 1。

其他队伍:赢1 输0 平 2n - 3 得分2n贪心

这样就很容易看出排名了。

代码:

#include 
  
   
#include 
   
     int n; int main() { while (~scanf("%d", &n) && n) { if (n <= 3) printf("1\n"); else if (n == 4) printf("2\n"); else printf("%d\n", n); } return 0; }