开始: 2025-06-01 14:00:00

2025-06-01能力测试

结束: 2025-06-01 17:00:00
当前: 2025-0606-0707 02:43:36  类型:OI 状态:已经结束 
P3 : 红松鼠  
描述

一片区域内有n只红松鼠,它们收集了这片区域内的每一颗坚果,第i只红松鼠储存了nuts[i]枚坚果。在到达冬天之前,它们不会吃储藏起来的坚果;并且这段时间内这些红松鼠会在同类出去觅食时盗窃同类的坚果——这是它们的生存竞争方式。在到达冬天前一共发生m次盗窃,每次盗窃时:编号为y的红松鼠盗走了编号为x的红松鼠的一半(向下取整)坚果。假定同一时间不会发生两次偷盗,那么到达冬天时,坚果个数最少的红松鼠比坚果个数最多的红松鼠少多少个坚果?

输入

第一行,单个空格分隔的两个整数n,m,分别表示红松鼠个数和发生的盗窃次数。

第二行,n个正整数nuts[i],表示最初状态下,第i只红松鼠储藏了nuts[i]枚坚果。

接下来m行,每行有单个空格分隔两个整数x,y,表示编号x的红松鼠被编号为y的红松鼠偷走了一半坚果。

对于100%的数据:

2 \le n \le 10^4

0 \le nuts[i] \le 10^3

0 \le m \le 10^4

0 \le x,y \le < n

输出

一个整数,表示到达冬天时,坚果个数最少的红松鼠比坚果个数最多的红松鼠少的坚果个数。

样例

输入

3 3
3 1 2
0 2
2 1
2 0

输出

2