HDU6440(费马小定理)

其实我读题都懵逼……他给出一个素数p,让你设计一种加和乘的运算使得\[(m+n)^p = m^p+n^p\]
答案是设计成%p意义下的加法和乘法,这样:\[(m+n)^p\ \%\ p = m+n\]\[m^p\ \%\ p=m\]\[n^p\ \%\ p=n\]
所以\[(m+n)^p\ \%\ p=(m^p+n^p)\ \%\ p\]
直接输出就行了。

int T, p;

int main() {
    for (read(T); T; T--) {
        read(p);
        rep(i, 1, p) {
            rep(j, 1, p) {
                printf("%d ", (i + j - 2) % p);
            }
            puts("");
        }
        rep(i, 1, p) {
            rep(j, 1, p) {
                printf("%lld ", (ll)(i - 1) * (j - 1) % p);
            }
            puts("");
        }
    }
    return 0;
}

原文地址:https://www.cnblogs.com/AlphaWA/p/10668211.html

时间: 2024-08-03 02:02:19

HDU6440(费马小定理)的相关文章

HDU6440 Dream 2018CCPC网络赛-费马小定理

目录 Catalog Solution: (有任何问题欢迎留言或私聊 && 欢迎交流讨论哦 Catalog Problem:Portal传送门 ?原题目描述在最下面. ?给定一个素数p,要求定义一个加法运算表和乘法运算表,使的\((m+n)^p=m^p+n^p(0≤m, n<p)\)成立. Solution: ?费马小定理:\(a^{p-1} = 1 mod p(p是素数)\) ?所以 \(a^p \;mod\; p = a^{p-1} \times a \;mod \;p = a

HDU6440 Dream(费马小定理+构造) -2018CCPC网络赛1003

题意: 给定素数p,定义p内封闭的加法和乘法,使得$(m+n)^p=m^p+n^p$ 思路: 由费马小定理,p是素数,$a^{p-1}\equiv 1(mod\;p)$ 所以$(m+n)^{p}\equiv (m+n)(mod\;p)$ $m^{p}\equiv m(mod\;p)$ $n^{p}\equiv n(mod\;p)$ 所以在模意义下,有$(m+n)^p=m^p+n^p$ 代码: #include<iostream> #include<cstdio> #include&

hdu6440 Dream 2018CCPC网络赛C 费马小定理+构造

题目传送门 题目大意: 给定一个素数p,让你重载加法运算和乘法运算,使(m+n)p=mp+np,并且 存在一个小于p的q,使集合{qk|0<k<p,k∈Z} 等于集合{k|0<k<p,k∈Z}. 然后输出两个矩阵,第一个矩阵输出i+j的值,第二个矩阵输出i*j的值.(题意好难懂,你们怎么都看懂了!!) 思路: 由费马小定理得到,当p是质数的时候,ap-1 ≡ 1(mod p),两边同乘以a,也就是说当ap和a在取模p的时候相等 所以(m+n)p=m+n=mp+np(乘法为x*x%p

hdu 4704 Sum (整数和分解+快速幂+费马小定理降幂)

题意: 给n(1<n<),求(s1+s2+s3+...+sn)mod(1e9+7).其中si表示n由i个数相加而成的种数,如n=4,则s1=1,s2=3.                         (全题文末) 知识点: 整数n有种和分解方法. 费马小定理:p是质数,若p不能整除a,则 a^(p-1) ≡1(mod p).可利用费马小定理降素数幂. 当m为素数,(m必须是素数才能用费马小定理) a=2时.(a=2只是题中条件,a可以为其他值) mod m =  *      //  k=

HDU 1098 Ignatius&#39;s puzzle 费马小定理+扩展欧几里德算法

题目大意: 给定k,找到一个满足的a使任意的x都满足 f(x)=5*x^13+13*x^5+k*a*x 被65整除 推证: f(x) = (5*x^12 + 13 * x^4 + ak) * x 因为x可以任意取 那么不能总是满足 65|x 那么必须是 65 | (5*x^12 + 13 * x^4 + ak) 那么就是说 x^12 / 13 + x^4 / 5 + ak / 65 正好是一个整数 假设能找到满足的a , 那么将 ak / 65 分进x^12 / 13 + x^4 / 5中得到

【Lucas定理/费马小定理/中国剩余定理/扩展欧几里得】[BZOJ 1951] 古代猪文

[Description] 求 [Solution] 容易得到, 所以,重点在怎么求 如果是p-1是个质数,我们可以用sqrt(n)的时间枚举所有d,用Lucas定理分别计算求和即可. 但是我们发现p-1=2*3*4679*35617,并不是一个质数,所以Lucas定理不能用了吗?并不,我们可以算出这个合式分别对2.3.4679.35617的模值,写出四个同余方程,再用孙子定理求解即可.注意特判g==p的情况,此时费马小定理不成立,ans=0. [Code] #include<cmath> #

hdu 4549 (矩阵快速幂+费马小定理)

题意:已知F0=a,F1=b,Fn=Fn-1*Fn-2,给你a,b,n求Fn%1000000007的值 思路:我们试着写几组数 F0=a F1=b F2=a*b F3=a*b2 F4=a2*b3 F5=a3*b5 我们发现a,b的系数其实是斐波那契数列,我们只需用矩阵快速幂求出相应系数就行,但是 这个系数随着增长会特别大,这时我们需要利用费马小定理进行降幂处理 费马小定理 ap-1≡1(mod p) 代码: #include <iostream> #include <cmath>

hdu1098费马小定理

Ignatius's puzzle Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 9783    Accepted Submission(s): 6839 Problem Description Ignatius is poor at math,he falls across a puzzle problem,so he has no

初等数论及其应用——费马小定理

费马小定理在化简数论问题有着广泛用途.

hdu 4549 M斐波那契数列(快速幂 矩阵快速幂 费马小定理)

题目链接http://acm.hdu.edu.cn/showproblem.php?pid=4549: 题目是中文的很容易理解吧.可一开始我把题目看错了,这毛病哈哈. 一开始我看错题时,就用了一个快速幂来解,不用说肯定wa,看题目的通过率也不高,我想会不会有啥坑啊.然而我就是那大坑,哈哈. 不说了,直接说题吧,先讨论k=1,2,3;时的解.这应该会解吧,不多说了: 从第四项开始f(4)=a^1+b^2;f(5)=a^2+b^3;f(6)=a^3+b^5......; 看出来了吧,a上的指数成斐波