zoukankan      html  css  js  c++  java
  • P1112 区间连续段

    题目描述

    给你一个长度为n的数组 \(a_1, a_2, \dots a_n\)
    一开始这n个元素都为0。
    然后有m次操作,每次操作有两种操作类型:

    • update x y a:将区间 \([x,y]\) 范围内的元素都置为 a
    • query x y:询问区间 \([x,y]\) 范围内有多少不同的数据段。

    举个例子,如果一个区间内有如下的数 \(3,3,2,2,2,1\) ,那么它有3段数据段,分别是 \(3,3\)\(2,2,2\)\(1\)

    输入格式

    输入的第一行包含两个整数 \(n,m(1 \le n \le 10^5, 1 \le m \le 10^5)\)
    接下来 \(m\) 行每行可能是两种形式:

    • update x y a:将区间 \([x,y]\) 范围内的元素都置为 a
    • query x y:询问区间 \([x,y]\) 范围内有多少不同的数据段。

    其中 \(1 \le x \le y \le n, 1 \le a \le 10^9\)

    输出格式

    对于每次 query 询问,输出该区间的数据段的个数。

    样例输入

    3 3
    update 1 2 1
    query 1 2
    query 2 3
    

    样例输出

    1
    2
    
  • 相关阅读:
    上经 -- 乾【卦一】乾为天(三)
    上经 -- 乾【卦一】乾为天(一)
    8. Shell 文件包含
    7. Shell 函数
    6. Shell 流程控制
    5. test命令
    4. printf 命令
    3. Shell 基本运算符
    2. Shell 传递参数
    shell介绍
  • 原文地址:https://www.cnblogs.com/problems/p/P1112.html
Copyright © 2011-2022 走看看