SGU 261. Discrete Roots (N次剩余)】的更多相关文章

N次剩余 题目:http://acm.sgu.ru/problem.php? contest=0&problem=261 题意:给定n,a,p 求出x^n ≡ a(mod p)在模p意义下的全部解,当中p是素数 说明: 代码: /* ID: wuqi9395@126.com PROG: LANG: C++ */ #include<map> #include<set> #include<queue> #include<stack> #include&l…
给定\(p, k, A\),满足\(k, p\)是质数,求 \[x^k \equiv A \mod p\] 不会... upd:3:29 两边取指标,是求 \[k\text{ind}_x\equiv \text{ind}_A\mod p-1\] 的解数,先求最小的解,然后暴力求之后的就行了. #include <iostream> #include <map> #include <cstdio> #include <algorithm> #include &…
Eddy's digital Roots Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 4436    Accepted Submission(s): 2505 Problem Description The digital root of a positive integer is found by summing the digi…
学习了元根的一些知识,哈哈. 总结一下: 几个概念: 阶:对于模数m和整数a,并且gcd(m,a)==1,那么定义a在模m下的阶r为满足ar=1 mod m的最小正整数. 性质1:r in [1,phi(m)]   (由欧拉定理) 性质2:r | phi(m)  ( ar=aphi(m) mod m,然后用反证法) 性质3:r 是整数a模m的阶当且仅当满足:1)ar=1 mod m   2) a r/p(r) ≠ 1 mod m (后面推前面也用反正法). 元根: 如果对于一个模数m,存在一个数…
话说好久没来博客上面写过东西了,之前集训过于辛苦了,但有很大的收获,我觉得有必要把它们拿出来总结分享.之前一直是个数论渣(小学初中没好好念过竞赛的缘故吧),经过一道题目对一些基础算法有了比较深刻的理解,在这里我打算系统地讲出这道题目涉及的大部分内容,希望可以帮到大家. 原题地址:http://acm.sgu.ru/problem.php?contest=0&problem=261 题目大意:给出质数$p$.$k$和一个自然数$a$,求关于$x$的同余方程$x^k \equiv a \pmod p…
UVA 1426 - Discrete Square Roots 题目链接 题意:给定X, N. R.要求r2≡x (mod n) (1 <= r < n)的全部解.R为一个已知解 思路: r2≡x (mod n)=>r2+k1n=x 已知一个r!,带入两式相减得 r2−r12=kn => (r+r1)(r−r1)=kn 枚举A,B,使得 A * B = n (r + r1)为A倍数 (r - r1)为B倍数 这样就能够推出 Aka−r1=Bkb+r1=r => Aka=Bk…
题意:给定 x,n,r,满足 r2 ≡ x mod(n) ,求在 0 ~ n 内满足 rr2 ≡ x mod(n) 的所有的 rr. 析:很明显直接是肯定不行了,复杂度太高了. r2 ≡ x mod(n)  (1) rr2 ≡ x mod(n)  (2)用 (2)- (1)得到 rr2 - r2 ≡ 0 mod (n) (rr + r)*(rr - r) ≡ 0 mod (n), 可以得到 (rr + r)*(rr - r) = k * n. 假设  n = a * b, 那么 可以知道 (rr…
a≡b(mod n)的含义是“a和b除以n的余数相同”,其充要条件是“a-b是n的整数倍”: 求所有满足条件r^2=x(mod m)的r 题目已经给定了一个初始的r,x,m #include <iostream> #include <cstdio> #include <sstream> #include <cstring> #include <map> #include <set> #include <vector> #i…
题目描述: 在已知一个离散平方根的情况下,按照从小到大的顺序输出其他所有的离散平方根. 在模n意义下,非负整数x的离散平方根是满足0<=r<n且r2=x(mod n)的整数r. 解题思路: 假设要求的一个离散平方根为r1,则有: r2=x(mod n) r12=x(mod n) 两式相减可得: r2-r12=0(mod n) 即: r2-r12=kn 令: a*b=n 则有: r-r1=0(mod a) r+r1=0(mod b) 即: r-r1=k1a r+r1=k2b 两式相加可得: k1…
给出一组正整数$x,n,r$,使得$r^2\equiv x(mod\: n)$,求出所有满足该等式的$r$. 假设有另一个解$r'$满足条件,则有$r^2-r'^2=kn$ 因式分解,得$(r+r')(r-r')=kn$ 将$n$分解成$a*b$,则有$\left\{\begin{matrix}r+r'=xa\\ r-r'=yb\end{matrix}\right.$ 两式相加得$2r=xa+yb$,这是一个二元线性不定方程,可用扩欧求出x的通解. 假设已经求出了$x$的通解$x=x_{0}+k…