首页 > 其他 > 详细

HDU6440(费马小定理)

时间:2019-04-08 00:43:57      阅读:205      评论:0      收藏:0      [点我收藏+]

其实我读题都懵逼……他给出一个素数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;
}

HDU6440(费马小定理)

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

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!