AT_abc322_f.[ABC322F] Vacation Query

提高+/省选-

通过率:0%

AC君温馨提醒

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

题目描述

给定一个由 0 和 1 组成、长度为 NN 的字符串 SS。记 SS 的第 ii 个字符为 SiS_i。

请依次处理 QQ 个查询。
每个查询由三个整数 (c,L,R)(c, L, R) 组成,cc 的取值决定了查询的类型。

  • 当 c=1c=1 时:对于所有满足 L≤i≤RL \leq i \leq R 的整数 ii,如果 SiS_i 是 1,则将其变为 0;如果 SiS_i 是 0,则将其变为 1。
  • 当 c=2c=2 时:取出 SS 的第 LL 个字符到第 RR 个字符组成的字符串 TT。请输出 TT 中连续的 1 的最大长度。

输入格式

输入按以下格式从标准输入读入。这里 queryi\mathrm{query}_i 表示第 ii 个查询。

NN QQ
SS
query1\mathrm{query}_1
query2\mathrm{query}_2
⋮\vdots
queryQ\mathrm{query}_Q

每个查询的格式如下:

cc LL RR

输出格式

设 c=2c=2 的查询有 kk 个,请输出 kk 行。
第 ii 行输出第 ii 个 c=2c=2 查询的答案。

输入输出样例

  • 输入#1

    7 6
    1101110
    2 1 7
    2 2 4
    1 3 6
    2 5 6
    1 4 7
    2 1 7

    输出#1

    3
    1
    0
    7

说明/提示

数据范围

  • 1≤N≤5×1051 \leq N \leq 5 \times 10^5
  • 1≤Q≤1051 \leq Q \leq 10^5
  • SS 是长度为 NN 的仅包含 0 和 1 的字符串
  • c∈{1,2}c \in \lbrace 1, 2 \rbrace
  • 1≤L≤R≤N1 \leq L \leq R \leq N
  • N,Q,c,L,RN, Q, c, L, R 均为整数

样例解释 1

依次处理查询如下:

  • 初始时,S=S= 1101110。
  • 第 1 个查询,T=T= 1101110。TT 中连续的 1 最长为第 4 到第 6 个字符的 111,答案为 33。
  • 第 2 个查询,T=T= 101。TT 中连续的 1 最长为第 1 或第 3 个字符的 1,答案为 11。
  • 第 3 个查询,操作后 SS 变为 1110000。
  • 第 4 个查询,T=T= 00。TT 中没有 1,答案为 00。
  • 第 5 个查询,操作后 SS 变为 1111111。
  • 第 6 个查询,T=T= 1111111。TT 中连续的 1 最长为第 1 到第 7 个字符的 1111111,答案为 77。

由 ChatGPT 4.1 翻译

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

首页