基本思想:
本題用的是離散化。
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 ,同樣是離散化處理~
附上完整代碼: