连连看
Time Limit:10000MS Memory Limit:32768KB 64bit IO Format:%I64d
& %I64u
SubmitStatusPracticeHDU
1175
Description
“连连看”相信很多人都玩过。没玩过也没关系,下面我给大家介绍一下游戏规则:在一个棋盘中,放了很多的棋子。如果某两个相同的棋子,可以通过...
分类:
其他好文 时间:
2015-07-31 10:33:34
阅读次数:
127
经典的区间DP,对于每个字符,在原字符串加上这个字符的代价是一个值,移除又是一个值,求把原字符串变成回文串的最小代价。经典的区间DP,状态转移方程见代码。在输入进行了一个处理,我们把对一个字符的增与删的操作的代价压缩成为一个数,代表对该字符进行增或删代价,把另一个相对较大的代价则忽略掉。因为在一遍插入一个字符与在另一边删除一个同样的字符对形成的贡献效果一样(可以仔细思考一下)。...
分类:
其他好文 时间:
2015-07-29 19:27:11
阅读次数:
162
大学四年走到这里也快要画上一个句号了 还有两三个月的时间就要告别本科了 只是现在还不知道能不能留在这片熟悉的校园里
这四年就这样的走了过来 时间过得很快 很难想象去年的校赛居然不是在昨天发生的 这一年里发生了很多的事情 这四年里也发生了很多很多的事情
常常想 如果我大一时没有遇到chenggang学长 或是说后来也一直没有接触acm 我会是个什么样子? 我大一是玩过来的我之后会有所改变像cha...
分类:
其他好文 时间:
2015-07-29 16:00:47
阅读次数:
242
对于给定的n,输出小于n的且不与n互质的正整数的和。
做这道题首先要知道欧拉函数,对正整数n,欧拉函数是小于或等于n的数中与n互质的数的数目;而且要知道这样一个结论:如果gcd(n,i)=1,则gcd(n,n-i)=1。知道以上两条结论,这道题的思路就大致清晰了。
首先可以知道在[1,n-1]中与n互质的数是成对出现的,即如果i与n互质,则(n-i)一定与n互质。这时我们发现这对于n互质的数的和为n。所以可以得出结论:小于等于n的同时与n互质的数的和是n*Euler(n)/2,Euler(n)表示小于n与n...
分类:
其他好文 时间:
2015-07-29 01:04:02
阅读次数:
160
求满足n=i*j+i+j(0<i<=j)的i、j的种数。
第一种方法:首先这个等式可以化成(n+1)=(i+1)*(j+1),所以只要求出(n+1)的约数的种数即可。同时注意到i与j呈负相关,同时i小于等于j,所以只需要从2到sqrt(n+1)枚举(从2开始是因为i最小为1,我们枚举的是(i+1))。但是,好暴力啊。所以我们可以用筛法先保存1e5以内的素数,再通过质因子分解求出约数数量。
第二种方法:观察等式n=i*j+i+j,可以转化成n-i=(i+1)*j,发现暴力枚举i,判断(n-i)%(n+1)==...
分类:
其他好文 时间:
2015-07-29 01:03:37
阅读次数:
140
题目地址:HDU 4630
这题一看数据范围,于是一直在思考n*logn的算法。。实在没想到好方法,找了找题解,发现都是用的n*sqrt(n)*logn的方法。。。算了算,这个复杂度的确可以过。。好吧。。
然后就可以先离线下来将询问按r值排序,然后枚举每个数,并且用sqrt(n)的方法枚举所有的约数,然后对于每个约数,对最近的一次出现的这个约数的地方进行更新。因为对于当前区间来讲,只要最近的这个...
分类:
其他好文 时间:
2015-07-28 13:15:05
阅读次数:
164
题目地址:ZJU 3886
这个题需要想到一点,因为对一个数x不断取模的话,而且设定他小于模才会进行取余操作的话,那么最多只会进行logx次,因为每次取模都会使x最少折半。然后想到了这点就很好做了。对于区间取模更新操作可以直接暴力更新,维护一个最大值,如果这个区间的最大值小于模的话, 就不用继续向叶子更新了。然后其他的大于模的就更新到叶子节点。
然后对于NicoNumber来说,只有6,2的幂次...
分类:
其他好文 时间:
2015-07-27 23:14:55
阅读次数:
425
Legal or Not
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 5737 Accepted Submission(s): 2651
点击打开链接
Problem Description
ACM-DIY is ...
分类:
编程语言 时间:
2015-07-27 13:20:29
阅读次数:
168
100*100的矩阵,如果裸dfs很可能超时,所以可以用记忆化搜索的方式,dp[i][j]表示当前到达[i,j]的最长路径,在dfs的同时,更新dp[i][j]。思路总体来说很简单。...
分类:
其他好文 时间:
2015-07-27 00:23:41
阅读次数:
131