#HK4946. 「EGOI2022」数据中心

「EGOI2022」数据中心

题目描述

题目译自 European Girls' Olympiad in Informatics 2022 Day2 T1. Data Centers

GoncaSoft 是一家互联网公司,运营着众多服务,全球共有 nn 个数据中心。每个数据中心有一定数量的可用机器。为了保证安全性和冗余,每项服务都会同时运行一个或多个副本,每个副本运行在不同的数据中心,且需要一定数量的机器。同一服务的所有副本所需的机器数量相同。

当 GoncaSoft 计划推出一个新服务 ii,需要 cic_{i} 个副本,每个副本占用 mim_{i} 台机器时,会先按当前可用机器数量从多到少对数据中心排序,然后在排名前 cic_{i} 的数据中心中各使用 mim_{i} 台机器。

请你计算在按给定顺序推出 ss 个服务后,各数据中心剩余的可用机器数量。

输入格式

第一行包含两个空格分隔的整数 nnss,分别表示 GoncaSoft 拥有的数据中心数量和新服务的数量。

第二行包含 nn 个空格分隔的整数,表示在推出任何服务前,nn 个数据中心各自的可用机器数量。

接下来 ss 行描述将要推出的服务:第 ii 行包含两个空格分隔的整数 mim_{i}cic_{i},分别表示第 ii 个服务每个副本需要的机器数量和副本数量。

输出格式

输出一行,包含 nn 个按降序排列的空格分隔整数,表示所有服务推出后,各数据中心剩余的可用机器数量。

5 4
20 12 10 15 18
3 4
4 1
1 3
4 2

11 10 10 9 8

步骤 可用机器数量 说明
开始 20 12 10 15 18
服务 #1:启动前 20 18 15 12 10 按可用机器数量降序排序
服务 #1:启动后 17 15 12 9 10 44 个数据中心各使用 33 台机器
服务 #2:启动前 17 15 12 10 9 按可用机器数量降序排序
服务 #2:启动后 13 15 12 10 9 第一个数据中心使用 44 台机器
服务 #3:启动前 15 13 12 10 9 按可用机器数量降序排序
服务 #3:启动后 14 12 11 10 9 33 个数据中心各使用 11 台机器
服务 #4:启动前 14 12 11 10 9 按可用机器数量降序排序
服务 #4:启动后 10 8 11 10 9 22 个数据中心各使用 44 台机器
结束 11 10 10 9 8 按可用机器数量降序排序

数据范围与提示

对于所有输入数据,满足:

  • 1n1000001 \leq n \leq 1000000s50000 \leq s \leq 5000
  • 每个数据中心初始最多有 10910^{9} 台机器
  • 对于每个服务 ii1is1 \leq i \leq s),1mi1091 \leq m_{i} \leq 10^{9}
  • 对于每个服务 ii1is1 \leq i \leq s),1cin1 \leq c_{i} \leq n
  • 数据中心始终有足够的机器支持新服务

详细子任务附加限制及分值如下表所示。

子任务 分值 附加限制
11 1212 n100,s=0n \leq 100, s=0
22 1212 n100,s10n \leq 100, s \leq 10
33 99 n50000,s100n \leq 50000, s \leq 100
44 2626 每个数据中心初始最多有 10001000 台机器
55 1818 所有服务(11ss)的 ci=1c_{i}=1
66 2323 无附加限制