基本思想:
本题用的是离散化。
1 对读入的每个矩形的左下方与右上方的横纵坐标分别保存在数组p,q中。(也要将读入的点的坐标存在rgl[]中)
2 因为p、q中的横纵坐标有重复,所以把其中的横纵不重复的放在数组x、y 中。(计算前可先升序排序)。
3 用数组val 表示原来的一个大矩形由读入的坐标所分成的每个小矩形的面积(说白了就是val[i][j]表示的是一个区域)
面积的计算:
4 依次枚举val[i][j]的坐标是否在原先矩形的区域内,如果在就将f[i][j]置为true
5 统计属于true的方格的面积和即为解.
关于离散化的一般介绍可以看我转的Matrix67牛的文章 http://blog.csdn.net/titikdhu/archive/2010/07/11/5726810.aspx
类似题目Sicily 1075. Input ,同样是离散化处理~
附上完整代码: