UVA 10837 - A Research Problem
题目链接
题意:给定phi(n),求最小满足的最小的n
思路:phi(n)=pk11(p1?1)?pk22(p2?1)?pk33(p3?1)....(p为质数),因此对于给定phi(n),先把满足条件phi(n)%(p?1)=0的素数全找出来,在这些素数基础上进行暴力搜索,枚举哪些素数用与不用,求出最小值。这样做看似时...
分类:
其他好文 时间:
2014-07-11 08:06:03
阅读次数:
209
枚举位移肯定超时,对于一个位移i,我们需要的是它的循环个数,也就是gcd(i,n),gcd(i,n)个数肯定不会很多,因为等价于n的约数的个数。
所以我们枚举n的约数,对于一个约数k,也就是循环个数为n/k这样的个数有phi[k]种,证明网上有很多。所以答案就是 phi[k]*(pow(n,n/k)) (k是n的所有约数)
由于约数会很大所以不能打表,只能单个算。
再由于最后要除以n,如果做...
分类:
其他好文 时间:
2014-07-08 14:05:43
阅读次数:
170
题目链接:uva 10692 - Huge Mods
题目大意:给出一个数的次方形式,就它模掉M的值。
解题思路:根据剩余系的性质,最后一定是行成周期的,所以就有ab=abmod(phi[M])+phi[M](phi[M]为M的欧拉函数),这样就可以根据递归去求解。
#include
#include
#include
const int maxn = 15;
int A[...
分类:
其他好文 时间:
2014-07-03 15:47:56
阅读次数:
204
求区间的euler数值,自然使用筛子法了。
Problem Description
The Euler function phi is an important kind of function in number theory, (n) represents the amount of the numbers which are smaller than n and coprim...
分类:
其他好文 时间:
2014-06-29 22:49:30
阅读次数:
303
UVA 10692 - Huge Mods
题目链接
题意:求a0a1a2...mod m
思路:直接算肯定不行,利用欧拉定理ab=a(b mod phi(m) + phi(m))(b>=phi(m)),对指数进行降值处理,然后就可以利用快速幂去计算了,计算过程利用递归求解。
代码:
#include
#include
const int N = 1005;
i...
分类:
其他好文 时间:
2014-06-26 11:43:20
阅读次数:
290
发现其实有关gcd的题目还是挺多的,这里根据做题顺序写出8题。[bzoj2818: Gcd] gcd(x,y)=质数, 1#include const int MAXN = 10000001;int n, primes;long long prime[MAXN], phi[MAXN];bool co...
分类:
其他好文 时间:
2014-06-25 22:12:36
阅读次数:
317
这题应该注意到与b2818的不同一个点能被看见当且仅当它与(1,1)的横纵坐标的距离gcd为1所以问题转化为x,y<=n-1,求gcd(x,y)=1的方案数最后要加上2代码: 1 var i,n,tot:longint; 2 ans:int64; 3 phi:array[0..500...
分类:
其他好文 时间:
2014-06-22 23:22:03
阅读次数:
295
一道找循环节的题,RE了很多发。要用到一个转换式子:a^b%c=[(a%c)^(b%phi(c)+phi(c))]%c#include#include#include#include#include#define
ull unsigned long longusing namespace std;i...
分类:
其他好文 时间:
2014-05-30 02:53:25
阅读次数:
251
欧拉函数。结果一定用unsigned long long。 1 //Accepted 40148 KB
712 ms 2 #include 3 #include 4 const int MAXN = 5000005; 5 unsigned long long
phi[MAXN]; 6...
分类:
其他好文 时间:
2014-05-25 23:12:12
阅读次数:
252
太水了, 我都不忍心发题解, 但毕竟是sgu上一道题,
我试试能不能一直这么写下去,就是求phi,上代码#include #include #include #include #include #include
#define N 10010using namespace std;int get.....
分类:
其他好文 时间:
2014-05-15 17:25:24
阅读次数:
306