UVA - 1418 WonderTeam

来源:互联网 发布:王者霸域 纯净数据库 编辑:程序博客网 时间:2024/04/28 13:00

题目大意:你支球队进行比赛,每两支队伍之间进行2场比赛,胜得3分,平得1分,输得0分,比赛后挑选出一个梦之队,要求进球总数最多,胜利场数最多,失球总数最少,并且三种都不能与其它对比列第一。问说梦之队的最低可能排名。


解题思路:n ≤ 3时ans = 1;n == 4时,ans = 2;n>4时,ans = n.

n ≤2的情况就不讨论了。并且进球和失球也可以不去考虑,很明显赢一场比赛就能让进球数变成第一(进无限个)。

首先梦之队一定要获得2场以上的比赛,(如果只赢一场的话,那么其它队伍将不能获胜,都为平局,分数将是梦之队最高),那又要尽量让梦之队的得分越少(排名按照得分情况),所以我们定梦之队获胜两场。然后其它n - 1支队伍均胜梦之队一场。


梦之队(1):胜2,输n-1,平n-3, 得分:n+3

被梦之队获胜的两只队伍(2):胜1,输1,平:2n-4, 得分:2n-1

其它队伍(n-3):胜1,输0,平:2n-3,得分:2n


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


0 0