CF1920D.Array Repetition
普及/提高-
通过率:0%
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
Jayden has an array a which is initially empty. There are n operations of two types he must perform in the given order.
- Jayden appends an integer x ( 1≤x≤n ) to the end of array a .
- Jayden appends x copies of array a to the end of array a . In other words, array a becomes [a,xa,…,a] . It is guaranteed that he has done at least one operation of the first type before this.
Jayden has q queries. For each query, you must tell him the k -th element of array a . The elements of the array are numbered from 1 .
输入格式
Each test consists of multiple test cases. The first line contains a single integer t ( 1≤t≤5000 ) — the number of test cases. The description of the test cases follows.
The first line of each test case contains two integers n and q ( 1≤n,q≤105 ) — the number of operations and the number of queries.
The following n lines describe the operations. Each line contains two integers b and x ( b∈{1,2} ), where b denotes the type of operation. If b=1 , then x ( 1≤x≤n ) is the integer Jayden appends to the end of the array. If b=2 , then x ( 1≤x≤109 ) is the number of copies Jayden appends to the end of the array.
The next line of each test case contains q integers k1,k2,…,kq ( 1≤ki≤min(1018,c) ), which denote the queries, where c is the size of the array after finishing all n operations.
It is guaranteed that the sum of n and the sum of q over all test cases does not exceed 105 .
输出格式
For each test case, output q integers — answers to Jayden's queries.
输入输出样例
输入#1
4 5 10 1 1 1 2 2 1 1 3 2 3 1 2 3 4 5 6 14 15 16 20 10 10 1 3 1 8 2 15 1 6 1 9 1 1 2 6 1 1 2 12 2 10 32752 25178 3198 3199 2460 2461 31450 33260 9016 4996 12 5 1 6 1 11 2 392130334 1 4 2 744811750 1 10 1 5 2 209373780 2 178928984 1 3 2 658326464 2 1000000000 914576963034536490 640707385283752918 636773368365261971 584126563607944922 1000000000000000000 2 2 1 1 1 2 1 2
输出#1
1 2 1 2 3 1 2 3 1 3 9 8 1 3 1 3 6 3 8 8 11 11 11 10 11 1 2
说明/提示
In the first test case:
- After the first operation a=[1] ;
- After the second operation a=[1,2] ;
- After the third operation a=[1,2,1,2] ;
- After the fourth operation a=[1,2,1,2,3] ;
- After the fifth operation a=[1,2,1,2,3,1,2,1,2,3,1,2,1,2,3,1,2,1,2,3] .
In the fourth test case, after all operations a=[1,2] .