#P16450. pm_10459折纸与涂色
pm_10459折纸与涂色
题目背景
学校美术社准备举办一次折纸创作展。社员小濑负责制作一张巨大的彩纸背景板,他想先把纸按指定方式折叠,再在折好的纸面上涂一个矩形。颜料会渗透所有纸层,因此把纸重新展开后,原纸上会同时出现若干块对称的涂色区域。
小濑会进行多次折叠与涂色。每次操作结束后,他都会把纸完全展开,再进行下一次操作。现在他想知道,所有操作完成后,整张纸还有多少面积没有被颜料覆盖。
题目描述
有一张宽为 、高为 的矩形纸。把原纸看作平面上的矩形
需要依次执行 次操作。第 次操作给出六个整数
每次操作按以下顺序进行:
- 沿直线 折叠,将折线左侧的纸向右侧翻折。
- 将当前纸张沿水平方向分成 个等高部分。重复 次:把当前最上方的一部分向下折到它下面的一部分上。
- 在折叠后的纸面坐标系中,涂满左下角为 、右上角为 的轴对齐矩形。
- 颜料会渗透所有纸层。随后把纸完全展开,涂色痕迹保留在原纸上。
折叠后的坐标原点始终取当前纸张的左下角。一次操作产生的涂色区域可能与此前操作产生的区域重叠,重叠部分只能计算一次。
请计算全部操作结束后,原纸上没有被涂色的总面积。
边界线的面积为 ,因此矩形采用闭区间或半开区间描述都不影响答案。
折叠示意图
下面展示样例 中宽为 、高为 的纸张进行一次操作的过程。图中的白色格子表示展开后被涂色的单位区域。

输入格式
第一行包含三个整数 ,分别表示纸张的宽、纸张的高和操作次数。
接下来 行,第 行包含六个整数:
xfold_i cnt_i x1_i y1_i x2_i y2_i
表示第 次操作的参数。
输出格式
输出一个整数,表示全部操作完成后,原纸上没有被涂色的总面积。
样例 1
输入
5 6 1
2 2 1 1 3 2
输出
21
说明
原纸面积为 。
展开后共有面积为 的区域被涂色,因此未涂色面积为
样例 2
输入
2 4 2
0 1 0 1 2 2
0 0 0 1 1 4
输出
3
样例 3
输入
6 6 2
2 1 1 2 3 3
5 2 2 0 4 2
输出
18
样例 4
输入
21 30 5
3 4 4 2 7 5
21 14 0 0 19 2
7 9 2 1 6 2
11 5 5 2 11 4
13 4 9 3 12 5
输出
27
数据范围
- ;
- ;
- ;
- ;
- 一定是 的约数;
- ;
- ;
- 答案不超过 ,需要使用 位整数。