摘要: 思路: 知道什么东西在变化,什么东西没有变化。 关于超时(cf上大概能跑1e8): 写之前先算算复杂度,如果$n^2$超时了,那可以考虑一下$nlog(n)$,用二分可以降低复杂度 当可以由一个东西或者两个东西确定另外一个东西的时候,我们最优办法是直接得到我们要的东西,然后看总量中是否存在这样一个东 阅读全文
posted @ 2020-01-31 23:08 caoanda 阅读(86) 评论(0) 推荐(0) 编辑
摘要: "D.小李打怪兽" 参考: "小李打怪兽——01背包" 通过化简可以得到最后所求东西为$sum (sum 2x)$(注:$sum=S_1+S_2,x=S_1 S_2$),当$S_1$与$S_2$最接近时,所求值最小。那么就只需要求出用$sum/2$的代价能够换得的最大值即可 代码: 阅读全文
posted @ 2020-01-31 21:33 caoanda 阅读(346) 评论(0) 推荐(0) 编辑
摘要: 欧拉函数和欧拉定理 参考: "欧拉函数" 欧拉函数: 欧拉函数,即$\varphi(n)$,表示的是小于等于$n$和$n$互质的数的个数。 比如$\varphi(1)=1$。 利用唯一分解定理,我们可以把一个整数唯一地分解为质数幂次的乘积, 设 $n=p_1^{k_1}p_2^{k_2}...p_s 阅读全文
posted @ 2020-01-31 14:11 caoanda 阅读(243) 评论(0) 推荐(0) 编辑
摘要: "D Same GCDs" 参考: "欧拉函数" "CF1295D Same GCDs" 题意很明显要求出当$k\in [a,a+m),gcd=gcd(a,m)$时,满足$gcd(k,m)=gcd$的$k$的个数,由欧拉函数可以转换为$gcd(k/gcd,m/gcd)=1,k\in [a,a+m)$ 阅读全文
posted @ 2020-01-31 10:52 caoanda 阅读(212) 评论(0) 推荐(0) 编辑