测评会员优惠活动进行中 · 开通 VIP,有效期内测评不限次 VIP 优惠中 · 测评不限次 立即查看

A5657. 数列分块入门 8

编程题 普及+/提高
知识点

题目描述

给出一个长为 $n$ 的数列,以及 $n$ 个操作,操作涉及区间询问等于一个数 $c$ 的元素,并将这个区间的所有元素改为 $c$。

输入格式

第一行输入一个数字 $n$。

第二行输入 $n$ 个数字,第 i 个数字为 $a_i$,以空格隔开。

接下来输入 $n$ 行询问,每行输入三个数字 $l$、$r$、$c$,以空格隔开。

表示先查询位于 $[l,r]$ 的数字有多少个是 $c$,再把位于 $[l,r]$ 的数字都改为 $c$。

输出格式

对于每次询问,输出一行一个数字表示答案。

输入输出样例

输入 #1
4
1 2 2 4
1 3 1
1 4 4
1 2 2
1 4 2
输出 #1
1
1
0
2

说明/提示

对于 $ 100\% $ 的数据,$ 1 \leq n \leq 100000, -2^{31} \leq \mathrm{others}$、$ \mathrm{ans} \leq 2^{31}-1 $。
上一题 去做题 下一题