http://poj.org/problem?id=2528
题意:基本和上一题板子上涂颜色一样,只不过这题数据量超大。。
思路:把一条条线段离散化。这题的离散化原理:题中区间:[1,4][2,6][8,10][3,4][7,10],排序去重后变成
1,2,3,4,6,7,8,10
赋其序号为1,2,3,4,5,6,7,8这样就减少了空间,但是不影响线段划分。将新的线段树排起建树,按照上一题涂颜色处理即可。
但是要注意一点,不可过多遍历n,因为n很大,所以在查询期间就要统计完毕。一下子想不到方法看别人的,原来是在查询中遍历查找求和,受教了。。
AC代码:
#include <stdio.h>
#include <algorithm>
#include <stdlib.h>
#include <string.h>
#includ