#17262. 购物方案

购物方案

题目描述

一家商店共有 NN 个物品。第 ii 个物品的类型为 aia_i,价格为 cic_i。类型编号均为 11MM 之间的整数。

一个购物方案是从这 NN 个物品中选出一个子集。对于每一种类型 jj,方案中选出的类型 jj 物品数量必须在闭区间 [xj,yj][x_j,y_j] 内。

购物方案的总价等于所选物品的价格之和。

请按总价从小到大输出前 KK 个合法购物方案的总价。如果两个不同的购物方案总价相同,它们仍然是两个方案,必须分别计数并重复输出该总价。

如果合法购物方案不足 KK 个,则在输出完所有合法方案后,用 1-1 补足到 KK 行。

输入格式

第一行包含三个整数 N,M,KN,M,K

接下来 NN 行,第 ii 行包含两个整数 ai,cia_i,c_i,表示第 ii 个物品的类型和价格。

接下来 MM 行,第 jj 行包含两个整数 xj,yjx_j,y_j,表示类型 jj 需要选择的物品数量范围。

输出格式

输出恰好 KK 行。

ii 行输出第 ii 便宜的合法购物方案总价;如果合法购物方案少于 ii 个,则输出 1-1

样例

样例输入 1

5 2 7
1 5
1 3
2 3
1 6
2 1
1 1
1 1

样例输出 1

4
6
6
7
8
9
-1

样例解释

第一类物品的价格为 5,3,65,3,6,第二类物品的价格为 3,13,1。合法方案必须在每一类中恰好选择一个物品。

所有合法方案的总价从小到大为

4,6,6,7,8,9.4,6,6,7,8,9.

其中两个总价为 66 的方案选择了不同的物品,因此都要计数。合法方案只有 66 个,所以第 77 行输出 1-1

数据范围

对于所有测试数据,满足:

  • 1N,M,K2×1051\le N,M,K\le 2\times 10^5
  • 1aiM1\le a_i\le M
  • 1ci1091\le c_i\le 10^9
  • 0xjyjN0\le x_j\le y_j\le N
  • 所有输入均为整数。

注意:某个类型实际拥有的物品数可能少于 xjx_j,此时不存在合法购物方案。

子任务

子任务 分值 测试点 特殊限制
1 20 001005001\sim 005 xj=yj=1x_j=y_j=1,且 N,M,K4000N,M,K\le 4000
2 006010006\sim 010 xj=yj=1x_j=y_j=1,且 N,M,ci4000N,M,c_i\le 4000
3 011015011\sim 015 xj=yj=1x_j=y_j=1
4 016020016\sim 020 xj=0x_j=0
5 021025021\sim 025 无额外限制

限制

空间限制:512 MB。