#P9715. 「QFOI R1」头

    ID: 10766 远端评测题 1000ms 512MiB 尝试: 0 已通过: 0 显示难度普及+/提高− 上传者: 标签>线性数据结构洛谷原创O2优化洛谷月赛链表

「QFOI R1」头

背景

可以看看这个讨论:https://www.luogu.com.cn/discuss/703835。

题目描述

小 R 是一个可爱的女孩子。有一天,她在被摸头时,突然灵光乍现,便随手加强了一道题给你做。

这道题的名字叫涂色游戏。初始时你有一个 nn 行 mm 列的网格,所有格子上都没有颜色。有 kk 种颜色的刷子,颜色编号为 1∼k1\sim k。然后给出 qq 次操作,每次操作给出 op,l,r,c,top,l,r,c,t 五个参数:

  • 如果 op=1op=1,表示将第 l∼rl\sim r 行的所有格子涂成颜色 cc。
  • 如果 op=2op=2,表示将第 l∼rl\sim r 列的所有格子涂成颜色 cc。
  • 如果 t=0t=0,意味着如果涂色时遇到已经被染色的格子,就不再进行染色。
  • 如果 t=1t=1,意味着如果涂色时遇到已经被染色的格子,就用新的颜色覆盖它。

在所有涂色操作结束以后,对于每种颜色,求出有多少个格子被染成了这种颜色。

输入格式

第一行四个整数 n,m,k,qn,m,k,q,表示行数、列数、颜色数和操作数。

接下来 qq 行,每行五个整数 op,l,r,c,top,l,r,c,t,表示这次操作的参数。

输出格式

一行 kk 个整数,第 ii 个整数表示被染成颜色 ii 的格子数量。

5 5 2 4
1 2 4 1 0
2 4 5 1 1
2 2 4 2 0
1 1 1 2 1
17 7
5 5 3 6
2 1 3 3 1
2 2 4 1 0
1 4 4 2 0
2 1 1 1 0
1 2 5 2 0
1 1 5 3 0
5 4 16

提示

样例 11 解释

用浅灰色表示颜色 11,灰色表示颜色 22。

涂色过程如图所示:

共有 1717 个区域被染成颜色 11,77 个区域被染成颜色 22。


数据范围

本题共 2020 个测试点,每个测试点 55 分。

对于全部数据,保证 1≤n,m,q≤2×1061\le n,m,q\le 2\times 10^6,1≤k≤5×1051\le k\le 5\times 10^5,op∈{1,2}op\in\{1,2\},若 op=1op=1 则 1≤l≤r≤n1\le l\le r\le n,若 op=2op=2 则 1≤l≤r≤m1\le l\le r\le m,1≤c≤k1\le c\le k,t∈{0,1}t\in\{0,1\}。

  • 对于测试点 1∼31\sim 3:保证 n,m,k,q≤200n,m,k,q\le 200。
  • 对于测试点 4∼64\sim 6:保证 n,m,k,q≤2×103n,m,k,q\le 2\times 10^3。
  • 对于测试点 7∼97\sim 9:保证 n,m,k,q≤105n,m,k,q\le 10^5,op=1op=1。
  • 对于测试点 10∼1210\sim 12:保证 n,m,k,q≤105n,m,k,q\le 10^5,t=1t=1。
  • 对于测试点 13∼1813\sim 18:保证 n,m,k,q≤105n,m,k,q\le 10^5。
  • 对于测试点 19∼2019\sim 20:无特殊限制。