上一页 1 ··· 6 7 8 9 10 11 12 下一页
摘要: 结论题呢 我们首先考虑数$1080=2^3*3^3*7$ 为了让前一个数能够整除后一个数,即后一个数能够被前一个数整除,我们必须有$x_i=kx_{i+1}$,且$x_i$和$kx_{i+1}$都是数$n$的因数,故$k$也应该是$n$的因数。 但是我们需要让这个序列最长,所以每一次乘的数$k$应该 阅读全文
posted @ 2021-07-15 19:41 lei_yu 阅读(32) 评论(0) 推荐(0) 编辑
摘要: 主要思想是贪心+搜索 首先我们考虑一个数$n=a_i^{p_i}$ 并且因数的个数为$\prod{(a_i+1)}$ 然后就OK了 对于一个反素数$n=2^a 3^b 5^c ...$,必然有且仅有连续的质因子2,3,5,7...且有$a>=b$ 否则就会有更小的数和它因数个数相同 所以我们可以直接 阅读全文
posted @ 2021-07-15 18:15 lei_yu 阅读(28) 评论(0) 推荐(0) 编辑
摘要: 算法1: 考虑对ab进行唯一分解($ p_i ^{a_i}$)然后就很好做了,但是分解的过程有点痛苦。。。。 算法2: 考虑$lcm(x,b_0)gcd(x,b_0)=xb_0$ 则$x=b_1gcd(x,b_0)/b_0$ 那么我们只需要枚举$gcd(x,b_0)$的值,就可以算出x,再带入与a的 阅读全文
posted @ 2021-07-15 15:37 lei_yu 阅读(53) 评论(0) 推荐(0) 编辑
摘要: 首先发现$n-m$是很小的一段 考虑对于一个合数$x$,其必然有一个质因子小于$sqrt(x)$ 所以这个题我们可以先求出$\sqrt{n+m}$内的所有质数,大概最大$10^5$ 然后对于每个质数,使用埃氏筛法的方法筛出$[n,n+m]$的合数即可 欧拉筛应该也可以吧) #include<iost 阅读全文
posted @ 2021-07-15 15:24 lei_yu 阅读(42) 评论(1) 推荐(0) 编辑
摘要: 水是挺水的 我们首先可以直接预处理出所有H-素数,再预处理出所有的H-半素数,最后求得答案即可。 对于H-素数,使用欧拉筛即可,稍微改一下,只枚举4x+1即可。 对于H-半素数,直接$O(n\sqrt n)$暴力判断即可 时间复杂度$O(n\sqrt n)$ 代码如下 #include<iostre 阅读全文
posted @ 2021-07-15 13:39 lei_yu 阅读(29) 评论(0) 推荐(0) 编辑
摘要: 朴素算法:对于一个数x,枚举小于 \(\sqrt x\) 的数看他有没有质数即可 因为没有大于$\sqrt x$的因数 筛法1:从2开始,将每个质数的倍数都标记成合数, 筛法2:对于一个数$i$,只用它的最小质因子筛它一次。 对于每一个数,都将它乘以某一个质数$prime[j]$得到一个新的合数$i 阅读全文
posted @ 2021-07-15 10:59 lei_yu 阅读(47) 评论(0) 推荐(0) 编辑
摘要: 两个知识点 第一个是01分数规划 第二个是树形背包,树形背包请看另一篇博客 01分数规划主要用于求如柿子 $\huge\frac{\sum a_i}{\sum b_i}$的最大值 那么设这个柿子=k,则有 $\sum a_i-k\sum b_i≥0$ 如果说是一个序列,那么我们可以二分k值,直接对所 阅读全文
posted @ 2021-07-13 17:24 lei_yu 阅读(44) 评论(0) 推荐(0) 编辑
摘要: :again make_data.exe cppa.exe cppb.exe fc a.out b.out if not errorlevel 1 goto again pause 在txt环境下完成后改为.bat文件后把exe放入同一个文件夹即可使用。简单粗暴 阅读全文
posted @ 2021-07-12 21:10 lei_yu 阅读(50) 评论(0) 推荐(0) 编辑
摘要: 首先考虑结论:u和 v 必须在同一个联通分量里面,然后从 u 沿任意路径走到 v ,设剩下的时间为t,若t 是当前联通分量中所有环的长度的 gcd 的倍数,那么答案是 1 ,否则是 0 。 对于其正确性:若存在满足条件的路径,必定是通过一条链,并路过几个环。由于边正反走的权值互为相反数,那么可以做到 阅读全文
posted @ 2021-07-12 21:06 lei_yu 阅读(137) 评论(0) 推荐(0) 编辑
摘要: 我们可以发现这个题和树上差分差不多,只是我们在计算前缀和和差分的时候需要改一下更新方式。 用f[u][time] 去更新 f[father][time+1] 然后我们发现一个小问题,这条链的另外一半的时间是倒过来的,于是我们开两个前缀和数组一个存往前更新一个存往后更新就可以了。 那么我们需要注意的是 阅读全文
posted @ 2021-07-12 21:04 lei_yu 阅读(37) 评论(0) 推荐(0) 编辑
上一页 1 ··· 6 7 8 9 10 11 12 下一页