HDU-5728-PowMod-求phi(i*n)前缀和+指数循环节 [Problem Description] 令\(k=\sum_{i=1}^m \varphi(i\cdot n)\ mod \ (10^9+7)\).求\(k^{k^{k^{\dots}}}\ mod \ p\). [Solution] 因为\(n\)的所有质因子的幂次都为\(1\),所以有\(gcd(p,\frac{n}{p})=1\).其中\(p\)为\(n\)的最小质因子 假设\(i\ mod \ p\ne 0\),则…
HDU 5728 - PowMod 题意:    定义: k = ∑(i=1,m) φ(i∗n) mod 1000000007 给出: n,m,p ,且 n 无平方因子 求: ans= k^(k^(k...k)) mod p  (k有无限个)    分析: 欧拉函数 + 指数循环节        第一部分 求出 k.        定理: 1.欧拉函数是非完全积性函数: φ(m*n) = φ(n)*φ(m) , 当且仅当GCD(n,m) = 1.        应用:            ∑(…
In the math class, the evil teacher gave you one unprecedented problem! Here f(n) is the n-th fibonacci number (n >= 0)! Where f(0) = f(1) = 1 and for any n > 1, f(n) = f(n - 1) + f(n - 2). For example, f(2) = 2, f(3) = 3, f(4) = 5 ... The teacher u…
Declare: k=∑ m i=1 φ(i∗n) mod 1000000007 k=∑i=1mφ(i∗n) mod 1000000007 n n is a square-free number. φ φ is the Euler's totient function. find: ans=k k k k ... k      mod p ans=kkkk...k mod p There are infinite number of k k InputMultiple test cases(te…
[关于 A^x = A^(x % Phi(C) + Phi(C)) (mod C) 的若干证明][指数循环节] 原文地址:http://hi.baidu.com/aekdycoin/item/e493adc9a7c0870bad092fd9 曾经看过如下一个公式: 以上的公式如果第一次见到,难免有不少疑惑: 为什么可以这么写?限制条件为什么是x >= Phi(C),这个公式为什么正确? 今天突发奇想,在纸上YY以后得到了以下证明(个人证明,如果有问题欢迎提出) 定理 1: 对于一个数对(A,C)…
最主要的步骤是用 1式子和2式子推 3式子.(难点,看了很多博客最后的时候那个式子看不懂) 当n, m互质时即gcd(n, m) == 1,存在phi(n * m) = phi(m) * phi(n) 当m为素数且n%m == 0时,存在phi(n*m) = phi(n) * m 记  为S(n, m),存在S(n,m) = S(n/p, m) * (p – 1) + S(n, m/p) (其中p为素数) #include<bits/stdc++.h> #define LL long long…
#include<stdio.h>#include<string.h>#include<algorithm>#define LL __int64using namespace std; LL mult_mod(LL a,LL b,LL c){    a%=c;    b%=c;    LL ret=0;    while(b)    {        if(b&1){ret+=a;ret%=c;}        a<<=1;        if(a&…
Assume that f(0) = 1 and 0^0=1. f(n) = (n%10)^f(n/10) for all n bigger than zero. Please calculate f(n)%m. (2 ≤ n , m ≤ 10^9, x^y means the y th power of x). InputThe first line contains a single positive integer T. which is the number of test cases.…
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3746 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Problem Description CC always becomes very depressed at the end of this month, he has checked his credit card yesterd…
题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=1358 题目描述: 给出一个字符串S,输出S的前缀能表达成Ak的所有情况,每种情况输出前缀的结束位置和k. 解题思路: 打表算出next数组,然后对位置i求循环节,如果满足 i % (i - Next[i]) == 0 && Next[i] != 0,所对应的循环节(i - Next[i]), 循环次数是i / (i - Next[i]) #include<cstdio> #inc…