题目链接 戳我 \(Describe\) 一场联赛可以表示成一个完全图,点表示参赛选手,任意两点u, v之间有且仅有一条有向边\((u, v)\)或\((v, u)\),表示\(u\)打败\(v\)或\(v\)打败\(u\).一个选手的得分等于被他打败的选手总数.一个选手被称为\("strong\ king"\)当且仅当他打败了所有比他分高的选手.分数最高的选手也是\("strong\ king"\).现在给出某场联赛所有选手的得分序列,由低到高,问合理安排每场比赛…
网络流/最大流/二分or贪心 题目大意:有n个队伍,两两之间有一场比赛,胜者得分+1,负者得分+0,问最多有几只队伍打败了所有得分比他高的队伍? 可以想到如果存在这样的“strong king”那么一定是胜场较多的队伍……(比他赢得多的队伍num少,而他总共赢得场数times足够多,至少得满足times>=num吧?) 那么我们可以二分/枚举k,表示胜场前k多的队伍是stong king.(这题范围小,只有10支队伍,如果队伍较多我们就需要二分了……) 最最丧心病狂的是!!!出题人TMD卡读入!…
The Maximum Number of Strong Kings   Description A tournament can be represented by a complete graph in which each vertex denotes a player and a directed edge is from vertex x to vertex y if player x beats player y. For a player x in a tournament T,…
The Maximum Number of Strong Kings Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 2488   Accepted: 1131 题目链接:http://poj.org/problem?id=2699 Description: A tournament can be represented by a complete graph in which each vertex denotes a…
Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 2102   Accepted: 975 Description A tournament can be represented by a complete graph in which each vertex denotes a player and a directed edge is from vertex x to vertex y if player x beats…
Description A tournament can be represented by a complete graph in which each vertex denotes a player and a directed edge is from vertex x to vertex y if player x beats player y. For a player x in a tournament T, the score of x is the number of playe…
http://poj.org/problem?id=2699 题意: 一场联赛可以表示成一个完全图,点表示参赛选手,任意两点u, v之间有且仅有一条有向边(u, v)或( v, u),表示u打败v或v打败u.一个选手的得分等于被他打败的选手总数.一个选手被称为“strong king”当且仅当他打败了所有比他分高的选手.分数最高的选手也是strong king.现在给出某场联赛所有选手的得分序列,由低到高,问合理安排每场比赛的结果后最多能有几个strong king.已知选手总数不超过10个.…
题意:有n(n<=10)个选手,两两之间打比赛,共有n*(n-1)/2场比赛,赢一场得1分.给出每个人最后的得分.求有多少个定义如下的strong king:赢了所有得分比自己高的人或本身就是分数最高的人. 更详细的说明:https://blog.csdn.net/sdj222555/article/details/7797257 分析:因为n很小,枚举人数是一种可行的做法,网络流求解.具体的建图方法是: 1.从源点向每个选手i建一条容量为val[i]的弧: 2.将每场比赛视作点,由每场比赛向汇…
题目链接 题意 对于一个竞赛图(有向完全图),其顶点是选手,边是比赛,边\(e=(u,v)\)代表该场比赛中\(u\)战胜\(v\). 现定义选手的分数为其战胜的人的个数(即竞赛图中点的出度).并且定义\(strong\ king\)为这样的选手,他战胜了所有比他分数高的人. 给定各选手的分数序列,问这个分数序列对应的所有可能的比赛局面中,最多有多少个\(strong\ king\)? 思路 从定义着手--建图 \(strong\ king\)为这样的选手,他战胜了所有比他分数高的人 这意味着什…
一定存在一种最优方案,使得分数前几个人是SK 所以我们可以二分答案或者枚举,然后就是经典的网络流建模. 另:输入很Excited #include <cstdio> #include <cstring> #include <cstdlib> #include <cmath> #include <set> #include <string> #include <algorithm> #include <vector&g…