![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
其他算法
文章平均质量分 72
ACZone
这个作者很懒,什么都没留下…
展开
-
hdu6103 Kirinriki 2017多校1008 尺取法
题意:给出字符串s,取s的两个字串a,b(a,b不重叠)。a,b的价值为a的首与b的对应尾字典序之差的绝对值。求长度最大的a,b,他们的价值小于m。题解:枚举每个对称轴,再用尺取法计算价值,具体代码注释。原创 2017-08-11 17:40:31 · 230 阅读 · 0 评论 -
hdu6129 Just do it 2017多校第七场1010 杨辉三角+规律
hdu6129 Just do it 2017多校第七场1010 杨辉三角+规律http://acm.hdu.edu.cn/showproblem.php?pid=6129题意:给出一个长度为n的数列,变换m次。每次变换a[i]=a[1]^a[2]^...^a[i]。输出变换m次后的数列。题解:观察第一个数对后面每个数的贡献。第一次变换:1 1 1 1 1第二次变换:1 2 3 4 5第三次变换:1 3 6 10 15第四次变换:1 4 10 20 35...可以看出第x次变换的第y项cn原创 2017-08-20 12:35:09 · 271 阅读 · 0 评论 -
hdu6128 Inverse of sum 2017多校第七场1009 数学
hdu6128 Inverse of sum 2017多校第七场1009 数学http://acm.hdu.edu.cn/showproblem.php?pid=6128题意:给出数组,求数组中有多少数对满足1/(a+b)=1/a+1/b(两边模p)。代码我是参考:http://blog.csdn.net/ddarkdawn/article/details/77248602题解:化简有:a*a+a*b+b*b=0(mod p).两边同乘(a-b),有a^3-b^3=0(mod p)。所以记录每个数字原创 2017-08-20 14:21:01 · 283 阅读 · 0 评论 -
CodeForces - 492D Vanya and Computer Game 二分
CodeForces - 492D Vanya and Computer Game 二分题意:Vanya和Vova打小怪兽。Vanya每秒可以攻击x次,Vova每秒可以攻击y次。怪兽可以承受m次攻击。求最后一刀是谁打的,同时打的输出Both。题解:一个打一次1/x秒,另一个1/y秒。同乘x*y,也就可以看作一个打一次y秒,另一个x秒。二分出怪兽在第几秒死,然后看最后一刀是谁打的即可。原创 2017-08-13 15:59:53 · 216 阅读 · 0 评论 -
51nod1057 N的阶乘 压位
51nod1057 N的阶乘 压位http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1057题意:求出N的阶乘准确值题解:一直没接触过这种类型的,以为需要大数的模板。结果看了别人的代码,用的巧妙的压位。其实也是大数的思路,大数加减乘除模板,是将一个长度为n的数划分成n位。我们这里也需要划分,如果是划分成一位。那么时间复杂度是不变的,只是解决了int的溢出问题。所以划分的大一点,即可以减少数组的开销,又可以降低时间复杂度。我还专门原创 2017-08-21 13:32:30 · 271 阅读 · 0 评论 -
Coin 2017icpc-西安赛区 牛顿二项式
Coin 2017icpc-西安赛区 牛顿二项式https://nanti.jisuanke.com/t/17115题意:有一枚不均匀的硬币,正面朝上的概率是q/p。现在抛k次硬币,求其中有偶数次正面朝上的概率为X/Y,现在要求输出X*(Y对于1e9+7的逆元)。题解:for(int i=0;i<=k;i+=2){ ans+=C(k,i)*(1-q/p)^(k-i)*(q/p)^i;}可以看出这是一个牛顿二项式,但是求的是偶数项。根据牛顿二项式有:偶数项+奇数项=(a+b)^k=1偶数原创 2017-09-16 19:13:48 · 234 阅读 · 0 评论 -
计蒜客 2017icpc南宁赛区 The Heaviest Non-decreasing Subsequence Problem 最长不递减子序列
计蒜客 2017icpc南宁赛区 The Heaviest Non-decreasing Subsequence Problem 最长不递减子序列https://nanti.jisuanke.com/t/17319题意:对于每个数x,若x<0,则价值为0,x大于10000,价值为5且数值变为x-10000,反之价值为1。现在求不递减的序列使得价值最大。题解:负数没有贡献不考虑,大于10000的存五次,相当于价值为1,反之存一次。然后求一次最长不递减子序列即可,答案就是子序列长度,因为价值都是1,这样处原创 2017-09-26 21:39:26 · 284 阅读 · 0 评论