欧拉函数
黑码
这个作者很懒,什么都没留下…
展开
-
uva 12493 欧拉函数 板子
大致题意:圆上有偶数n个点,每m个点连起来,最后可以把所有点串联起来就合法。问有多少个m可以完成串联,串联后形状相同的算重复 n <2^31 思路:可以写个暴力程序,可以发现只要m与n互质,就可以完成串联,所以用欧拉函数解决 证明: 设cnt为当第一次达到原点时连接了几个点。 所以有 m*cnt = k*n 得到 cnt = k*n/m 显然要第一次达到原点就是k逐渐增大使k*n/m原创 2017-05-28 16:42:10 · 537 阅读 · 0 评论 -
欧拉函数 简单说明和打表的板子
(2)欧拉函数:说白了,就是指一个数n在[1,n-1]区间有多少个数与它互质(和容斥原理一样的应用)。 比如说,euler[n] = m代表的意思是在区间[1,n-1]里面有m个数与n互质。 欧拉函数公式:(我们假设n的质因子有x,y) euler[n] = n * (1-1/x) * (1-1/y)。若有多个继续添上即可。 欧拉函数拓展:小于或等于n的数中(n > 1),与n互质的数的总和为原创 2017-05-28 17:16:20 · 907 阅读 · 0 评论 -
上海大学oj 膜一下将带给你好运(欧拉函数变形)
膜一下将带给你好运 发布时间: 2017年7月9日 20:20 最后更新: 2017年7月10日 21:12 时间限制: 1000ms 内存限制: 128M描述 欧拉函数ϕ(n)被定义1~n中与n互质的数的个数。例如ϕ(5)=4,因为1,2,3,4这四个数字与5互质。定义f函数:f(n)=∑i=233n−233ϕ(i)∗[n/i]其中[n/i]表示n除以i所得到的商输入 第一行一个原创 2017-07-13 14:18:41 · 993 阅读 · 0 评论 -
hdu 5514 (欧拉函数的应用)
这个大佬写得很好 http://blog.csdn.net/qingshui23/article/details/73091006#include <bits/stdc++.h> using namespace std; typedef long long ll; int euler(int n)//求n的欧拉函数 { int i; int eu = n;//欧拉函数转载 2017-09-28 17:05:21 · 544 阅读 · 0 评论