CF1737G.Ela Takes Dancing Class

普及/提高-

通过率:0%

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

DTL engineers love partying in the weekend. Ela does, too! Unfortunately, she didn't know how to dance yet. Therefore, she decided to take a dancing class.There are nn students in the dancing class, including Ela. In the final project, nn students will participate in a choreography described below.

nn students are positioned on the positive side of the OxOx -axis. The ii -th dancer is located at ai>0a_i > 0 . Some dancers will change positions during the dance (we'll call them movable dancers), and others will stay in the same place during a choreography (we'll call them immovable dancers). We distinguish the dancers using a binary string ss of length nn : if sis_i equals '1', then the ii -th dancer is movable, otherwise the ii -th dancer is immovable.

Let's call the "positive energy value" of the choreography d>0d > 0 . The dancers will perform "movements" based on this value.

Each minute after the dance begins, the movable dancer with the smallest xx -coordinate will start moving to the right and initiate a "movement". At the beginning of the movement, the dancer's energy level will be initiated equally to the positive energy value of the choreography, which is dd . Each time they move from some yy to y+1y+1 , the energy level will be decreased by 11 . At some point, the dancer might meet other fellow dancers in the same coordinates. If it happens, then the energy level of the dancer will be increased by 11 . A dancer will stop moving to the right when his energy level reaches 00 , and he doesn't share a position with another dancer.

The dancers are very well-trained, and each "movement" will end before the next minute begins.

To show her understanding of this choreography, Ela has to answer qq queries, each consisting of two integers kk and mm . The answer to this query is the coordinate of the mm -th dancer of both types from the left at kk -th minute after the choreography begins. In other words, denote xk,1,xk,2,,xk,nx_{k, 1}, x_{k, 2}, \dots, x_{k, n} as the sorted coordinates of the dancers at kk -th minute from the beginning, you need to print xk,mx_{k, m} .

输入格式

The first line contains three integers nn , dd and qq ( 1n1051 \le n \le 10^5 ; 1d1091 \le d \le 10^9 ; 1q1051 \le q \le 10^5 ) — the number of dancers, the positive energy value of the choreography, and the number of queries.

The second line contains nn integers a1,a2,,ana_1, a_2, \dots, a_n ( 1a1<a2<<an1091 \le a_1 < a_2 < \dots < a_n \le 10^9 ) — the coordinates of each dancer.

The third line contains a binary string ss of length nn — the movability of each dancer. Each character is either '0' or '1'. It is guaranteed that ss contains at least one character '1'.

Then qq lines follow, the ii -th of them contains two integers kik_i and mim_i ( 1ki1091 \le k_i \le 10^9 , 1min1 \le m_i \le n ) — the content of each query.

输出格式

Output qq lines, each contains a single integer — the answer for the corresponding query.

输入输出样例

  • 输入#1

    4 3 8
    1 3 6 7
    1011
    1 1
    1 2
    1 3
    1 4
    2 1
    2 2
    2 3
    2 4

    输出#1

    3
    5
    6
    7
    3
    6
    7
    10
  • 输入#2

    1 1 5
    2
    1
    1 1
    2 1
    3 1
    4 1
    5 1

    输出#2

    3
    4
    5
    6
    7

说明/提示

Let's consider the first example test case.

In the first minute, 11 is the lowest coordinate between movable dancers. The energy level is initiated with 33 . Then the following happens:

  • The dancer moves from 11 to 22 . The energy level decreased to 22 .
  • The dancer moves from 22 to 33 . The energy level decreased to 11 , then increased to 22 when she met another dancer at 33 .
  • The dancer moves from 33 to 44 . The energy level decreased to 11 .
  • The dancer moves from 44 to 55 . The energy level decreased to 00 .

At the end of the first minute, the sorted coordinates of the dancers become [3,5,6,7][3, 5, 6, 7] , and their respective movability is '0111'.

In the second minute, 55 is the lowest coordinate between movable dancers. The energy level is initiated with 33 . Then the following happens:

  • The dancer moves from 55 to 66 . The energy level decreased to 22 , then increased to 33 when she met another dancer at 66 .
  • The dancer moves from 66 to 77 . The energy level decreased to 22 , then increased to 33 when she met another dancer at 77 .
  • The dancer moves from 77 to 88 . The energy level decreased to 22 .
  • The dancer moves from 88 to 99 . The energy level decreased to 11 .
  • The dancer moves from 99 to 1010 . The energy level decreased to 00 .

At the end of the second minute, the sorted coordinates of the dancers become [3,6,7,10][3, 6, 7, 10] , and their respective movability is '0111'.

首页