How can I solve the problem Hooligan?, problem H of the ACM-ICPC Latin American Contest 2009. Could anyone help me? http://coj.uci.cu/24h/problem.xhtml?pid=1210
№ | Пользователь | Рейтинг |
---|---|---|
1 | tourist | 3993 |
2 | jiangly | 3743 |
3 | orzdevinwang | 3707 |
4 | Radewoosh | 3627 |
5 | jqdai0815 | 3620 |
6 | Benq | 3564 |
7 | Kevin114514 | 3443 |
8 | ksun48 | 3434 |
9 | Rewinding | 3397 |
10 | Um_nik | 3396 |
Страны | Города | Организации | Всё → |
№ | Пользователь | Вклад |
---|---|---|
1 | cry | 167 |
2 | Um_nik | 163 |
3 | maomao90 | 162 |
3 | atcoder_official | 162 |
5 | adamant | 159 |
6 | -is-this-fft- | 158 |
7 | awoo | 155 |
8 | TheScrasse | 154 |
9 | Dominater069 | 153 |
10 | nor | 152 |
How can I solve the problem Hooligan?, problem H of the ACM-ICPC Latin American Contest 2009. Could anyone help me? http://coj.uci.cu/24h/problem.xhtml?pid=1210
Название |
---|
First, we suppose greedily that our dream team wins all of its missing matches. After this, it should have P points. Then, build a graph with nodes x1, x2, ..., xn - 1. Now, between xi and xj (i ≠ j), put an edge in each direction with capacity equal to the number of games missing between teams i and j. Use a node B, which has an edge towards every xi with capacity equal to the number of matches the ith team still has to play, and a node E, in such a way that there is an edge from each xi to this node with capacity equal to P - pi, where pi are the points that the ith team already has. Your dream team can be a champion iff the maxflow from B to E equals the number of missing matches.
Do you consider whether the team wins, loses or draw?
Yes. I am considering that each team wins 1 point per every game that it has not played (This happens because every match distributes 2 points, so 1 per team). This amount of points is the flow from B to xi. After that, each team can "transfer" one point to other team, with the constraint that it cannot transfer more points than the matches that they can play between them. A point transfer from xi to xj means that team i lose to team j. If no transfer occurs, then i and j drew their game.
Thanks. Could you send me your code?
Sorry, I haven't coded it yet :/
This is a famous Max Flow problem, more info here