CF978F.Mentors
普及/提高-
通过率:0%
时间限制:3.00s
内存限制:256MB
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
In BerSoft n programmers work, the programmer i is characterized by a skill ri.
A programmer a can be a mentor of a programmer b if and only if the skill of the programmer a is strictly greater than the skill of the programmer b (ra>rb) and programmers a and b are not in a quarrel.
You are given the skills of each programmers and a list of k pairs of the programmers, which are in a quarrel (pairs are unordered). For each programmer i, find the number of programmers, for which the programmer i can be a mentor.
在 BerSoft 公司有 n 名程序员,程序员 i 的技能值为 ri。
当且仅当程序员 a 的技能值严格大于程序员 b 的技能值(即 ra>rb),且程序员 a 与 b 之间没有争吵关系时,程序员 a 才能成为程序员 b 的导师。
现给出每名程序员的技能值,以及 k 对处于争吵关系的程序员(每对无序)。对每名程序员 i,请计算有多少名程序员可以以程序员 i 为导师。
输入格式
The first line contains two integers n and k (2≤n≤2⋅105, 0≤k≤min(2⋅105,2n⋅(n−1))) — total number of programmers and number of pairs of programmers which are in a quarrel.
The second line contains a sequence of integers r1,r2,…,rn (1≤ri≤109), where ri equals to the skill of the i-th programmer.
Each of the following k lines contains two distinct integers x, y (1≤x,y≤n, x=y) — pair of programmers in a quarrel. The pairs are unordered, it means that if x is in a quarrel with y then y is in a quarrel with x. Guaranteed, that for each pair (x,y) there are no other pairs (x,y) and (y,x) in the input.
第一行包含两个整数 n 和 k(2≤n≤2⋅105,0≤k≤min(2⋅105,2n⋅(n−1)))—— 分别表示程序员总数以及互相争吵的程序员对数。
第二行包含一个整数序列 r1,r2,…,rn(1≤ri≤109),其中 ri 表示第 i 位程序员的技能值。
接下来的 k 行每行包含两个不同的整数 x、y(1≤x,y≤n,x=y)—— 表示一对互相争吵的程序员。这些对是无序的,即若 x 与 y 争吵,则 y 也与 x 争吵。保证输入中对于任意一对 (x,y),不会同时出现 (x,y) 和 (y,x)。
输出格式
Print n integers, the i-th number should be equal to the number of programmers, for which the i-th programmer can be a mentor. Programmers are numbered in the same order that their skills are given in the input.
输出 n 个整数,其中第 i 个数应等于能够以第 i 位程序员为导师的程序员人数。程序员的编号顺序与输入中给出的技能顺序一致。
输入输出样例
输入#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
说明/提示
In the first example, the first programmer can not be mentor of any other (because only the second programmer has a skill, lower than first programmer skill, but they are in a quarrel). The second programmer can not be mentor of any other programmer, because his skill is minimal among others. The third programmer can be a mentor of the second programmer. The fourth programmer can be a mentor of the first and of the second programmers. He can not be a mentor of the third programmer, because they are in a quarrel.
在第一个例子中,第一位程序员无法成为任何其他程序员的导师(因为只有第二位程序员的技能低于第一位程序员,但他们之间存在争执)。第二位程序员无法成为任何其他程序员的导师,因为他的技能在所有人中最低。第三位程序员可以成为第二位程序员的导师。第四位程序员可以成为第一位和第二位程序员的导师;但他不能成为第三位程序员的导师,因为他们之间存在争执。
输入解题思路,AI测评打分。不知道怎么写?