现在的位置: 首页 > 综合 > 正文

Sicily 1045. Space Management[离散化]

2014年01月17日 ⁄ 综合 ⁄ 共 2059字 ⁄ 字号 评论关闭

基本思想:
本题用的是离散化。
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 ,同样是离散化处理~

 

 

附上完整代码:

 

 

抱歉!评论已关闭.