6741: 序列更新

内存限制:512 MB 时间限制:6 S
题面:传统 评测方式:文本比较 上传者:
提交:9 通过:3

题目描述

Problem Description 给定两个长度为 n 的序列a0,a1,…,an−1 和b0,b1,…,bn−1, 你需要依次执行q 次操作,每次操作将会给出一个整数k (0≤k<n),对于每个i (0i<n),你需要将ai 更新为max(ai,b(i+k)modn)。为了证明你确实维护了a 序列,请在每次操作之后输出 i=0n1ai 的值。

输入格式

Input 第一行包含一个正整数 T (1≤T≤2),表示测试数据的组数。 每组数据第一行包含两个正整数 n,q (1≤�,�≤250,0001≤n,q≤250,000),分别表示序列的长度以及操作的次数。 第二行包含 n 个正整数a0,a1,…,an−1 (1≤ai≤109)。 第三行包含 n 个正整数 b0,b1,…,bn−1 (1≤bi≤109)。 接下来 q 行,每行一个整数 k (0≤k<n),依次描述每次操作
输入数据保证每个ai,bi 都是在[1,109] 均匀随机生成得到(样例除外),且每个k 都是在[0,n) 均匀随机生成得到(样例除外)。

输出格式

Output 对于每组数据输出q 行,其中第i 行输出一个整数,即在第 i 次操作完毕之后 i=0n1ai 的值。

输入样例 复制

1
5 5
1 5 3 6 8
2 5 4 7 3
3
2
4
1
0

输出样例 复制

29
31
33
35
36