A71103.Farm

省选/NOI-

通过率:0%

时间限制:1.00s

内存限制:128MB

题目描述

题目背景

FM\color{red}{\mathtt{FM}}:“这么大片菜地,需要多少种子才能铺满呢?“

NH\color{yellow}{\mathtt{NH}}:“作为一名优秀的农场主,我们一定要使用……嘿嘿嘿……”

FM\color{red}{\mathtt{FM}}:“去去去!正经点!我们并没有穿越!”

NH\color{yellow}{\mathtt{NH}}:“行,那就只能用代码了。”

NH 被 FM 挖苦了,快帮助 NH 证明他的实力吧!


题目描述

现在有一块菜地,大小是 N×MN\times M。每一次操作过后时间都会增加 11

给定 QQ 次操作,每次操作是以下 22 类操作之一:

  • 1 x y k:表示在坐标 (x,y)(x,y) 洒一粒蔬菜种子,该种子 kk 个单位时间后会成熟。
  • 2 x1 y1 x2 y2:表示采摘区间 (x1,y1)(x_1,y_1)(x2,y2)(x_2,y_2) 之间所有成熟的蔬菜。

对于每个操作 22,你需要给出本次采摘蔬菜的数量。

输入格式

输入共 Q+1Q + 1 行:

第一行 33 个正整数 N,M,QN,M,Q 表示菜地的大小和操作次数;

接下来 QQ 行每行若干个正整数表示一次操作。

输出格式

对于每个操作 22,输出其采摘蔬菜的数量。

输入输出样例

  • 输入#1

    3 3 5
    1 2 2 1
    2 1 1 3 3
    1 2 1 3
    1 3 3 1
    2 1 1 2 2

    输出#1

    1
    0

说明/提示

【数据范围】

对于 100%100\% 的数据,保证:

  • 1N,M5×1051\le N,M \le 5\times 10^5
  • 1Q2×1051\le Q \le 2\times 10^5
  • 对于操作 111xN1\le x \le N1yM1\le y \le M1kQ1\le k \le Q
  • 对于操作 221x1x2N1\le x1 \le x2 \le N1y1y2M1\le y1 \le y2 \le M
  • 同一格子最多有 11​ 个蔬菜
  • 数据均为随机数据
测试点编号 N,MN,M\le QQ \le 特殊性质
1~4 10310^3 10310^3
5~6 10310^3 10510^5 A
7~9 10310^3 10510^5 B
10~20 5×1055\times 10^5 2×1052\times 10^5

特殊性质 A:仅有一次操作 22 且位于最后。

特殊性质 B:操作 11kk 值恒为 11

【样例解释】

样例组 #1:我们有一个大小为 3×33\times 3 的菜地,

操作 11: 在坐标 (2,2)(2,2) 洒一粒种子,成熟时间为 11 单位时间。

  • 当前时间:11
  • 种子将在时间 1+1=21 + 1 = 2 时成熟。

操作 22: 采摘矩形区域 (1,1)(1,1)(3,3)(3,3) 的所有成熟蔬菜。

  • 当前时间:22
  • (2,2)(2,2) 的种子成熟时间为 2=22=2,因此被采摘。
  • 采摘数量:11

操作 11: 在坐标 (2,1)(2,1) 洒一粒种子,成熟时间为 33 单位时间。

  • 当前时间:33
  • 种子将在时间 3+3=63 + 3 = 6 时成熟。

操作 11: 在坐标 (3,3)(3,3) 洒一粒种子,成熟时间为 11 单位时间。

  • 当前时间:44
  • 种子将在时间 4+1=54 + 1 = 5 时成熟。

操作 22: 采摘矩形区域 (1,1)(1,1)(2,2)(2,2) 的所有成熟蔬菜。

  • 当前时间:55
  • (2,2)(2,2) 的种子已被采摘(不再重复计算)。
    (2,1)(2,1) 的种子成熟时间 6>56 > 5,未成熟。
  • 采摘数量:00
首页