A18538.拳击教练

普及/提高-

官方

通过率:0%

时间限制:1.00s

内存限制:128MB

题目描述

在一个拳击爱好者的网站中,有 nn 名拳击选手的资料,第 ii 位选手有能力值 riri

当选手 aa 的能力值大于 选手 bb 的能力值时,aa 可以成为 bb 的教练,但如果 aa 选手 与 bb 选手是死对头,aa 就无法成为 bb 的教练。

现在给你 nn 个选手的能力值,以及 kk 对选手,为死对头的关系。

对于每一个选手,他可以成为成为多少个选手的教练。

输入格式

第一行输入两个数,nnkk (2n2105(2 \le n \le 2 \cdot 10^5, 0kmin(2105,n(n1)2))0 \le k \le \min(2 \cdot 10^5, \frac{n \cdot (n - 1)}{2})),代表选手的个数,以及有 kk 对选手是死对头。

第二行包含 nn 个整数,r1,r2,,rnr_1, r_2, \dots, r_n (1ri109)(1 \le r_i \le 10^{9}),其中 riri 是第 ii 个选手的能力值。

接下来有 kk 行,每一行有两个数 aabb,表示 aabb (1a,bnab)(1 \leq a,b \leq n,a \neq b) 是死对头。

输出格式

输出 nn 个数,按输入的顺序,输出每位选手能成为多少人的教练。

输入输出样例

  • 输入#1

    4 2
    10 4 10 15
    1 2
    4 3

    输出#1

    0 0 1 2
  • 输入#2

    10 4
    5 4 1 5 4 3 7 1 2 5
    4 6
    2 1
    10 8
    3 5

    输出#2

    5 4 0 5 3 3 9 0 2 5

说明/提示

在第一个测试样例中,比选手1能力要小的有选手2,但他们是死对头,所以选手1不能成为任何人的教练。没有人的能力值比选手2要小。选手3可以做选手2的教练。选手4比前面选手的能力值都要大,但与选手3是死对头,所以他只能成为选手1选手2的教练。

首页