CF2002E.Cosmic Rays

提高+/省选-

通过率:0%

AC君温馨提醒

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

题目描述

给定一个整数数组 s1,s2,…,sls_1, s_2, \ldots, s_l,每过一秒,宇宙射线会使所有满足 i=1i=1 或 si≠si−1s_i\neq s_{i-1} 的 sis_i 同时被删除,剩下的部分会按顺序拼接成新的数组 s1,s2,…,sl′s_1, s_2, \ldots, s_{l'}。

定义一个数组的“强度”为其变为空所需的秒数。

你得到的整数数组以 nn 个对的压缩形式给出,描述了从左到右的数组。每个对 (ai,bi)(a_i, b_i) 表示 aia_i 个 bib_i,即 bi,bi,⋯ ,bi⏟ai 次\underbrace{b_i, b_i, \cdots, b_i}_{a_i\textrm{ 次}}。

对于每个 i=1,2,…,ni=1,2,\dots,n,请你求出由前 ii 个对描述的序列的强度。

输入格式

每个测试包含多组测试用例。第一行包含测试用例个数 tt(1≤t≤1041\le t\le 10^4)。接下来是每组测试用例的描述。

每组测试用例的第一行包含一个整数 nn(1≤n≤3⋅1051\le n\le 3\cdot10^5)——序列 aa 的长度。

接下来的 nn 行,每行包含两个整数 aia_i、bib_i(1≤ai≤109,0≤bi≤n1\le a_i\le 10^9, 0\le b_i\le n)——描述序列的对。

保证所有 nn 的总和不超过 3⋅1053\cdot10^5。

保证对于所有 1≤i<n1\le i<n,都有 bi≠bi+1b_i\neq b_{i+1}。

输出格式

对于每组测试用例,输出一行包含 nn 个整数,分别表示每个前缀对描述的序列的强度。

输入输出样例

  • 输入#1

    4
    4
    2 0
    1 1
    3 0
    5 1
    6
    4 6
    1 3
    4 6
    4 0
    7 6
    6 3
    7
    9 0
    7 1
    5 0
    7 1
    9 0
    1 1
    2 0
    10
    10 7
    4 9
    2 2
    7 9
    2 8
    8 5
    11 7
    15 5
    12 7
    4 0

    输出#1

    2 2 4 5 
    4 4 7 7 10 10 
    9 9 9 9 9 9 10 
    10 10 10 10 10 10 12 15 15 15

说明/提示

在第一个测试用例中,长度为 44 的前缀对应的变化为 [0,0,1,0,0,0,1,1,1,1,1]→[0,0,0,1,1,1,1]→[0,0,1,1,1]→[0,1,1]→[1]→[][0,0,1,0,0,0,1,1,1,1,1]\rightarrow[0,0,0,1,1,1,1]\rightarrow[0,0,1,1,1]\rightarrow[0,1,1]\rightarrow[1]\rightarrow[],因此该数组在 55 秒后变为空。

在第二个测试用例中,长度为 44 的前缀对应的变化为 [6,6,6,6,3,6,6,6,6,0,0,0,0]→[6,6,6,6,6,6,0,0,0]→[6,6,6,6,6,0,0]→[6,6,6,6,0]→[6,6,6]→[6,6]→[6]→[][6,6,6,6,3,6,6,6,6,0,0,0,0]\rightarrow[6,6,6,6,6,6,0,0,0]\rightarrow[6,6,6,6,6,0,0]\rightarrow[6,6,6,6,0]\rightarrow[6,6,6]\rightarrow[6,6]\rightarrow[6]\rightarrow[],因此该数组在 77 秒后变为空。

由 ChatGPT 4.1 翻译

输入解题思路,AI测评打分。不知道怎么写?

首页