编程题
### 问题描述 有 $n$ 名英雄联盟玩家,他们有各自的 rating 分:$r_i$,他们有的实力很强,有的实力很弱,实力弱的希望实力强的带他们上分。同时给出 $m$ 对关系 $(a,b)$ ,表示玩家 $a$ 和 玩家 $b$ 在同一个大区。 下面给出真假上分的定义: - 若满足 $r_a >r_b$,且玩家 $a$ 和玩家 $b$ **在同一个大区**,则称玩家 $a$ 可以带玩家 $b$ 真上分。 - 若满足 $r_a >r_b$,且玩家 $a$ 和玩家 $b$ **不在同一个大区**,则称玩家 $a$ 可以带玩家 $b$ 假上分。 现在请你计算对于每一个人,他能带多少个人假上分? ### 输入格式 第 $1$ 行输入两个正整数 $n,m$,分别表示玩家人数,给出的关系对数。 第 $2$ 行输入 $n$ 个正整数 $r_i$,分别表示 $n$ 个人的 rating 分。 第 $3$ 行到 $m + 2$ 行,每行输入两个正整数 $a,b$,表示 $a$ 和 $b$ 在同一个大区。 ### 输出格式 输出共一行 $n$ 个整数,第 $i$ 个整数表示第 $i$ 个人可以带多少玩家假上分。 ### 样例输入 ``` 4 1 1 2 3 4 1 2 ``` ### 样例输出 ``` 0 0 2 3 ``` ### 说明 玩家 $1$ 的 rating 最低,所以必然不可能带任何人上分。 玩家 $2$ 的 rating 大于玩家 $1$,但他们在一个大区,属于真上分,不是假上分。 玩家 $3$ 可以带玩家 $1$,$2$ 假上分。 玩家 $4$ 可以带玩家 $1$,$2$,$3$ 假上分。 ### 评测数据规模 对于所有评测数据,$1\leq n,m\leq10^6$,$1\leq r_i\leq 10^9$,$1\leq a,b\leq n$。
查看答案
赣ICP备20007335号-2