摘要:
考虑点分树。 求出每个重心所管辖的范围内的每个点到它的距离,建成点分树。 查询时二分答案,然后问题就转化为求到x的距离<=d的点的个数。 在点分树上暴力往上跑就行了,注意去重。 时间复杂度:O(nlog3n) 代码: 1 #include<cstdio> 2 #include<cstring> 3 阅读全文
posted @ 2017-03-15 17:53
gjghfd
阅读(205)
评论(0)
推荐(1)
摘要:
画个图自己走一走,容易看出这是一个二分图。 那么答案就是二分图的最大点独立集。 二分图的最大点独立集=|V|-最大匹配数 最大匹配数用匈牙利算法求。 代码: 1 #include<cstdio> 2 #include<cstring> 3 #include<iostream> 4 using nam 阅读全文
posted @ 2017-03-15 09:14
gjghfd
阅读(164)
评论(0)
推荐(0)
摘要:
其实就是卡特兰数的定义。。。 将放置一个1视为(1,1),放置一个0视为(1,-1) 则答案就是从(0,0)出发到(n+m,n-m)且不经过y=-1的方案数。 从(0,0)出发到(n+m,n-m)的总方案数是C(n+m,n)。 若一条路径经过y=-1,那么将其从(0,0)到y=-1的一段路径以y=- 阅读全文
posted @ 2017-03-15 08:25
gjghfd
阅读(305)
评论(0)
推荐(0)
摘要:
与bzoj2187类似,不过是要先将小数转化成四舍五入前的分数 代码: 1 #include<cstdio> 2 #include<cstring> 3 #include<iostream> 4 #include<cmath> 5 using namespace std; 6 #define ll 阅读全文
posted @ 2017-03-15 07:42
gjghfd
阅读(316)
评论(0)
推荐(0)
摘要:
用类欧不断缩小规模,就能在O(T*log2n)时间内求出答案。 题解:http://blog.csdn.net/coldef/article/details/62035919 代码: 1 #include<cstdio> 2 #include<cstring> 3 #include<iostream 阅读全文
posted @ 2017-03-15 07:39
gjghfd
阅读(833)
评论(0)
推荐(0)

浙公网安备 33010602011771号