题库练习 Election Promises
← 上一题 下一题 →

A12500 | Election Promises

时间限制1s
内存限制256MB
通过 / 提交0/0

题目描述

In Byteland, there are two political parties fighting for seats in the Parliament in the upcoming elections: Wrong Answer Party and Time Limit Exceeded Party. As they want to convince as many citizens as possible to cast their votes on them, they keep promising lower and lower taxes.

There are $n$ cities in Byteland, connected by $m$ one-way roads. Interestingly enough, the road network has no cycles — it's impossible to start in any city, follow a number of roads, and return to that city. Last year, citizens of the $i$ -th city had to pay $h_i$ bourles of tax.

Parties will now alternately hold the election conventions in various cities. If a party holds a convention in city $v$ , the party needs to decrease the taxes in this city to a non-negative integer amount of bourles. However, at the same time they can arbitrarily modify the taxes in each of the cities that can be reached from $v$ using a single road. The only condition that must be fulfilled that the tax in each city has to remain a non-negative integer amount of bourles.

The first party to hold the convention is Wrong Answer Party. It's predicted that the party to hold the last convention will win the election. Can Wrong Answer Party win regardless of Time Limit Exceeded Party's moves?

输入格式

The first line of the input contains two integers $n$ , $m$ ( $1 \leq n \leq 200\,000$ , $0 \leq m \leq 200\,000$ ) — the number of cities and roads in Byteland.

The next line contains $n$ space-separated integers $h_1, h_2, \dots, h_n$ ( $0 \leq h_i \leq 10^9$ ); $h_i$ denotes the amount of taxes paid in the $i$ -th city.

Each of the following $m$ lines contains two integers ( $1 \leq u, v \leq n$ , $u \neq v$ ), and describes a one-way road leading from the city $u$ to the city $v$ . There will be no cycles in the road network. No two roads will connect the same pair of cities.

We can show that the conventions cannot be held indefinitely for any correct test case.

输出格式

If Wrong Answer Party can win the election, output WIN in the first line of your output. In this case, you're additionally asked to produce any convention allowing the party to win regardless of the opponent's actions. The second line should contain $n$ non-negative integers $h'_1, h'_2, \dots, h'_n$ ( $0 \leq h'_i \leq 2 \cdot 10^{18}$ ) describing the amount of taxes paid in consecutive cities after the convention. If there are multiple answers, output any. We guarantee that if the party has any winning move, there exists a move after which no city has to pay more than $2 \cdot 10^{18}$ bourles.

If the party cannot assure their victory, output LOSE in the first and only line of the output.

输入输出样例

输入 #1
4 2
2 1 1 5
1 2
3 4
输出 #1
WIN
1 5 1 5 
输入 #2
4 2
1 5 1 5
1 2
3 4
输出 #2
LOSE
输入 #3
3 3
314 159 265
1 2
1 3
3 2
输出 #3
WIN
0 0 0 
输入 #4
6 4
2 2 5 5 6 6
1 3
2 4
3 5
4 6
输出 #4
LOSE
C++ 编辑器
输入
输出