#P7432. [THUPC2017] 钦妹的玩具商店

    ID: 6408 远端评测题 3000ms 64MiB 尝试: 0 已通过: 0 难度: 6 上传者: 标签>动态规划,dp2017背包块状链表,块状数组,分块

[THUPC2017] 钦妹的玩具商店

题目描述

钦妹和弗雷兹在 C 市有一个玩具店,店里有 nn 种玩具,编号依次为 1,2,...,n1,2,...,n,第 ii 件玩具的单价为 cic_i 元,一个该玩具提供的愉悦度为 viv_i

突然有一天,C 市来了 mm 个小朋友。据可靠消息,接下来 QQ 天,这些小朋友每天都会来店里买东西,其中第 ii 个小朋友每天都会带 ii 元 (1im1\le i\le m)。

由于某些玩具不是很优秀,所以每天都会有不同的玩具被禁止出售给小朋友。具体来说,在第 ii 天,编号在区间 [li,ri][l_i,r_i] 内的物品小朋友是不能购买的。

除此之外,为了防止小朋友们太愉悦,每件玩具都有一个限购件数 tit_i。也就是说,对于第 ii 种玩具,每个小朋友在每一天的购买件数都必须为不超过 tit_i 的非负整数。

现在,对于每一天,你想知道:所有小朋友所能获得的最大愉悦度之和(对 108+710^8+7 取模);所有小朋友所能获得的最大愉悦度的异或和(异或运算是 xor\operatorname{xor} 运算,即 C++/Java/Python 中的 ^ 运算)。

本题强制在线,具体规则在输入描述中体现。

输入格式

从标准输入读入数据。

输入包含多组数据。第一行有一个整数 TT,表示测试数据的组数,对于每组数据:

第一行输入三个整数 n,m,Qn,m,Q 分别表示玩具数目、小朋友的数目以及天数。

第二行 nn 个非负整数,分别描述每件玩具的单价 c1,c2,...,cnc_1,c_2,...,c_n

第三行 nn 个非负整数,分别描述每件玩具的愉悦度 v1,v2,...,vnv_1,v_2,...,v_n

第四行 nn 个非负整数,分别描述每件玩具的限购次数 t1,t2,...,tnt_1,t_2,...,t_n

第五行到第 Q+4Q+4 行,每行两个描述区间的参数 x,yx,y。第 行和前一天的答案共同描述了第 ii 天禁止购买的编号区间,假设前一天的最大愉悦度之和为 lastans\operatorname{lastans} ,那么当天的 li,ril_i,r_i 满足下式:

$$l_i=\min((x+\operatorname{lastans}-1)\bmod n+1,(y+\operatorname{lastans}-1\bmod n+1)) $$$$r_i=\max((x+\operatorname{lastans}-1)\bmod n+1,(y+\operatorname{lastans}-1\bmod n+1)) $$

在第一天时,我们认为 lastans=0\operatorname{lastans}=0 。保证 1x,yn1\le x,y\le n

输出格式

输出到标准输出。

对于每一组数据,输出 QQ 行,每行 22 个整数,依次表示所有小朋友能够获得的最大愉悦度之和(对 108+710^8+7 取模)以及异或和。

2
3 10 3
2 3 3
20 50 24
3 1 10
1 1
2 2
3 3
2 7 3
6 7
1 2
1 1
1 1
2 2
1 2
568 120
660 20
660 20
2 2
2 0
0 0

提示

对于所有的数据,1n,m,Q,ci,ti1031\le n,m,Q,c_i,t_i\le 10^31vi2.5×1051\le v_i\le 2.5\times 10^5n,m,Q104\sum n,\sum m,\sum Q\le 10^4

版权信息

来自 THUPC(THU Programming Contest,清华大学程序设计竞赛)2017。