CF2117H.Incessant Rain

省选/NOI-

通过率:0%

AC君温馨提醒

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

题目描述

注意本题的内存限制与通常不同。

银狼给了你一个长度为 nn 的数组 aa 和 qq 个查询。在每个查询中,她替换数组中的一个元素。在每个查询后,她将询问你 kk 的最大值,使得存在一个整数 xx 和 aa 的一个子数组 ∗^*,其中 xx 是该子数组的 kk-多数。

若 yy 在数组 bb 中出现了至少 ⌊∣b∣+12⌋+k\left\lfloor\frac{|b|+1}{2}\right\rfloor+k 次(其中 ∣b∣|b| 表示 bb 的长度),则称 yy 是数组 bb 的 kk-多数。注意 bb 可能不存在一个 kk-多数。

∗^* 若数组 aa 在删除开头和结尾的若干(可能为零或者全部)元素后可以得到数组 bb,则称 bb 是 aa 的一个子数组。

输入格式

输入数据包含多个测试用例。输入数据的第一行包含一个整数 tt(1≤t≤1041 \le t \le 10^4),表示测试用例的个数。

对于每个测试用例:

  • 第一行包含两个整数 nn 和 qq(1≤n,q≤3⋅1051 \le n, q \le 3 \cdot 10^5),表示 aa 的长度和查询的数量。
  • 第二行包含 nn 个整数 a1,a2,…,ana_1, a_2, \dots, a_n(1≤ai≤n1 \le a_i \le n)。
  • 接下来的 qq 行中每行包含两个整数 ii 和 xx,表示当前查询将 aia_i 替换为 xx(1≤i,x≤n1 \le i,x \le n)。

输入数据保证所有测试用例的 nn 和 qq 之和均不超过 3⋅1053 \cdot 10^5。

输出格式

对于每个测试用例,在一行中输出每个查询的回答,并以空格分隔。

输入输出样例

  • 输入#1

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

    输出#1

    1 1 2 1 0 
    2 2 3 2 1 1 1 2

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

首页