#P1010. 追忆

    ID: 11 传统题 1000ms 512MiB 尝试: 0 已通过: 0难度: 提高 ← 上一题 下一题 → 随机一题 上传者: 标签 数据结构 线段树 其他 分治 区间合并 延迟标记
显示设置

追忆

题目背景

我常常追忆过去。

记忆如一条蜿蜒的长河,每个时刻都是河中的一滴水珠,折射着不同的光泽。有些水珠清澈如镜,映照着过往的每一个细节;有些则朦胧如雾,只留下淡淡的轮廓。时间之手将这些水珠串联成河,有时平静流淌,有时泛起涟漪。

我在岸边驻足,凝视这记忆之河。偶尔,我会轻轻搅动河面,让某些水珠改变光泽——那是记忆在岁月中自然发生的微妙变化。更多时候,我只是静静地望着一截河段,寻找其中最长的一段顺流而下、永不回溯的轨迹——那是我生命中最连贯、最温柔的时光。

过去已经凝固,我带着回忆向前,只是时常疏于保管,回忆也在改变着各自的形态。这给我的追忆旅程带来些许挑战。

我该在哪里停留?我问我自己。

题目描述

给定一个长度为 nn 的序列 aa。

你需要进行 qq 次操作。操作有以下两种:

  • 11 kk xx:将 aka_k 改为 xx。
  • 22 ll rr:访问区间 [l,r][l,r] 的最长连续不下降子序列,并输出其长度。

输入格式

输入共 q+2q+2 行。

第一行两个整数 n,qn,q。

第二行 nn 个整数,表示这个序列 aa。

接下来 qq 行,第 ii (1≤i≤1 \le i \le) 行三个整数,表示 opti,ki,xiopt_i,k_i,x_i 或 opti,li,riopt_i,l_i,r_i。

输出格式

对于每个 22 操作,输出一行一个整数,表示对应操作的答案。

输入输出样例 #1

输入 #1

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

输出 #1

3
3
3

说明

数据范围

  • 对于 16%16\% 的数据,1≤n,m≤1001 \le n,m \le 100。
  • 对于 40%40\% 的数据,1≤n,m≤1031 \le n,m \le 10^3。
  • 对于 88%88\% 的数据,1≤n,m≤1051 \le n,m \le 10^5。
  • 对于 100%100\% 的数据,1≤n,m≤1061 \le n,m \le 10^6,1≤l≤r≤n1 \le l \le r \le n,1≤k≤n1 \le k \le n,1≤x,ai≤1091 \le x,a_i \le 10^9。