小敏种树苗(Round 1)

小敏种树苗(Round 1)

题目描述

小敏种了一排N(1<=N<=100000)个相邻(连续)的树苗,每个树苗i的初始高度为ai(ai是整数,1<=ai<=100000)。小敏有时候给\([\)l,r\(]\)区间的树苗浇水,这个区间的所有树苗就会长高h。但小敏有强迫症,她看不惯树木参差不齐,于是她想去掉一些树苗,使剩下相邻的树苗都一样高。小敏望向窗户发呆的时候,总是想着在\([\)l,r\(]\)区间内,如何去掉最少的树苗,使剩下相邻的树苗都一样高。她请你来解决这个问题。

输入数据

第一行,一个整数N。
第二行,有N个整数ai。
第三行,一个整数Q,代表小敏浇水次数和询问你次数的总和
下面Q行, 每一行形式如 1 s t h的,代表小敏在\([\)s,t\(]\)区间浇水,区间内树苗长高了h;
形式如2 s t的,代表小敏询问你在\([\)s,t\(]\)区间内,如何去掉最少的树苗,使剩下相邻的树苗都一样高。(只是无聊的问,并没有真的去掉)。

输出数据

若干行,每行一个整数代表你对小敏一个询问的回答(即最少去掉几棵树)。

输入

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

输出

2

样例解释:初始高度为1 3 4 6 8,将\([\)3,4\(]\)区间的树浇水后变为1 3 6 8 8,去掉第2和第3棵树,使剩下相邻的树苗{1}{8 8}每组都一样高。

说明/提示

数据规模与约定
对于 30% 的数据:N,Q<=5000。
对于 100% 的数据:N,Q<=100000。
对于所有数据 1<=s<=t<=N;1<=h<=100000,都为整数;

信息

ID
1008
难度
9
分类
线段树 点击显示
标签
(无)
递交数
4
已通过
2
通过率
50%
被复制
1
上传者