题意:给出这样一个图,求一共有多少个大小不同或位置不同的正方形。分析:这种题一看就有思路,最开始的想法就是枚举正方形的位置,需要二重循环,枚举边长一重循环,判断是否为正方形又需要一重循环,复杂度为O(n4),对于n≤9来说,这个复杂度可以接受。可以像预处理前缀和那样,用O(1)的时间判断是否为正方形...
分类:
其他好文 时间:
2015-01-06 17:29:15
阅读次数:
151
题意:给出n,求把n写成若干个连续素数之和的方案数。分析:这道题非常类似大白书P48的例21,上面详细讲了如何从一个O(n3)的算法优化到O(n2)再到O(nlogn),最后到O(n)的神一般的优化。首先筛出10000以内的素数,放到一个数组中,然后求出素数的前缀和B。这样第i个素数一直累加到第j个...
分类:
编程语言 时间:
2015-01-06 00:47:52
阅读次数:
187
题目大意:希望在 k 步之内,将尽可能多的1移到相邻的位置上这里依靠前缀和解决问题我们用pos[i]保存第i个1的位置,这里位置我以1开始用sum[i]保存前 i 个1从 0 点移到当前位置所需的步数每次进行判断能否将 st 号 到 la 号的1移到相邻位置,我们要先清楚,为了使移动步数最少,我们需...
分类:
其他好文 时间:
2015-01-05 00:19:23
阅读次数:
111
只能说太弱了。。。 别人眼中的水题。。 我到现在还不知道能不能写出~~维护前缀和并且应用同余定理: (sum[r] - sum[l-1])%3 == 0 -> (sum[r]%3 - sum[l-1]%3)%3 == 0 -> sum[r]%3 == sum[l-1]%3线段树维护前缀和中0,1,2...
分类:
其他好文 时间:
2015-01-04 22:57:32
阅读次数:
218
再填个坑。 动态维护区间第K大(带单点修改) 首先裸的区间第K大我们是用的【前缀和】思想,实现O(n)预处理,O(1)找树查询,那么如果是动态的呢?我们可以利用树状数组(BIT)的思想,进行O(logn)的修改,O(logn)的查询(当然由于是在线段树上做,都各需要再乘logn的复杂度) 也就是.....
分类:
其他好文 时间:
2015-01-02 22:18:48
阅读次数:
144
题目:http://www.lydsy.com:808/JudgeOnline/problem.php?id=1271分析:很巧妙的一道题因为最多只有一个点是奇数,所以说明这个点前面的前缀和都是偶数,后面的前缀和都是奇数。所以可以按照前缀和来二分对于mid,如果Mid的前缀和为奇数,那么往前找,如果...
分类:
其他好文 时间:
2015-01-02 01:07:44
阅读次数:
159
n*n会挂?前缀和、斜率优化啥的都不好使?
等等,题意中有个允许误差范围?诶?...
分类:
其他好文 时间:
2014-12-26 16:51:46
阅读次数:
183
http://acdream.info/problem?pid=1019
Problem Description
Now we have a long long string, and we will have two kinds of operation on it.
C i y : change the ith letter to y.
Q i j : check whet...
分类:
编程语言 时间:
2014-12-26 16:41:35
阅读次数:
338
题目大意:
枚举d=gcd(i,j),得到
现在我们只需要知道Σ[d|T]f(d)μ(T/d)的前缀和就行了 设这个函数为g(x)
观察这个函数 由于含平方因子数的μ值都为零,因此我们只考虑μ(T/d)!=0的数
令T=p1^a1*p2^a2*...*pk^ak,d=p1^b1*p2^b2*...*pk^bk
那么0
如果存在ai≠aj(i≠j),那么我们可以将所有的a...
分类:
其他好文 时间:
2014-12-24 13:31:37
阅读次数:
220
题目大意:令F(i)为i的约数和,多次询问对于1
n,m
首先如果不考虑a的限制 令g(i)为1
那么显然有
利用线性筛处理出F(i) 那么答案显然是
治好了我多年的公式恐惧症。。。
现在我们只需要求出的前缀和 这个问题就能在O(√n)的时间内出解
枚举每一个i 枚举i的倍数 暴力即可求出这个函数 然后处理前缀和即可 复杂度是O(nlogn)的
那么现在有了a的...
分类:
编程语言 时间:
2014-12-22 11:20:34
阅读次数:
221