CF1810E.Monsters

普及/提高-

通过率:0%

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

There is an undirected graph with nn vertices and mm edges. Initially, for each vertex ii , there is a monster with danger aia_{i} on that vertex. For a monster with danger aia_{i} , you can defeat it if and only if you have defeated at least aia_{i} other monsters before.

Now you want to defeat all the monsters. First, you choose some vertex ss and defeat the monster on that vertex (since you haven't defeated any monsters before, asa_{s} has to be 00 ). Then, you can move through the edges. If you want to move from vertex uu to vertex vv , then the following must hold: either the monster on vertex vv has been defeated before, or you can defeat it now. For the second case, you defeat the monster on vertex vv and reach vertex vv .

You can pass the vertices and the edges any number of times. Determine whether you can defeat all the monsters or not.

输入格式

Each test contains multiple test cases. The first line contains a single integer tt ( 1t1041 \le t \le 10^4 ) — the number of test cases. Their description follows.

The first line of each test case contains two integers nn , mm ( 1n,m21051 \le n, m \le 2 \cdot 10^5 ) — the number of vertices and edges in the graph respectively.

The second line of each test case contains nn integers a1,a2,,ana_{1}, a_{2}, \ldots, a_{n} ( 0ain0 \le a_{i} \le n ) — the dangers of monsters on corresponding vertices.

For the following mm lines, each line contains two integers uu , vv ( 1u,vn1 \le u, v \le n ), describing an edge connecting vertex uu and vertex vv . It is guaranteed that there are no multi-edges or self-loops in the graph.

It is guaranteed that both the sum of nn and the sum of mm over all test cases do not exceed 21052 \cdot 10^5 .

输出格式

For each test case, output "YES" if you can defeat all the monsters, or "NO" otherwise.

You can output the answer in any case (upper or lower). For example, the strings "yEs", "yes", "Yes", and "YES" will be recognized as positive responses.

输入输出样例

  • 输入#1

    5
    4 3
    2 1 0 3
    1 2
    2 3
    3 4
    6 6
    0 1 2 3 0 1
    1 2
    2 3
    3 4
    4 5
    4 6
    5 6
    4 3
    0 1 2 0
    1 2
    2 3
    1 3
    4 6
    1 1 1 0
    1 2
    3 2
    4 3
    2 4
    4 1
    1 3
    5 5
    0 1 3 2 0
    1 2
    2 3
    3 4
    4 5
    3 5

    输出#1

    YES
    YES
    NO
    YES
    NO

说明/提示

In the first test case, you can start at vertex 33 and defeat the monster on it, before you go to vertices 22 , 11 in this order, defeating the monsters on them as well. Then you return to vertex 33 , and go to vertex 44 , defeating the monster on it.

In the third test case, there is no path to vertex 44 if you start at vertex 11 . Also, there is no path to vertices 11 , 22 , and 33 if you start at vertex 44 .

首页