费马小定理题

费马小定理题费马小定理 假如 p 是质数 且 gcd a p 1 那么 nbsp A 题 HDU 4704 首先是挡板法 隔板法 然后用即可 高中数学范围不多叙述 然后得到答案是 nbsp 这题读入数据大 就算快速幂也肯定 TLE 所以用费马小定理 把数据规模降到 int 范围内 时间复杂度降低因为 1e9 7 是一个素数 基本可以假设 N 1 不是 1e9 7 的倍数 这一点我没想到 所以没写出来 所

费马小定理:假如p是质数,且gcd(a,p)=1,那么

a^{p-1}\equiv 1\left ( mod \ p \right )

 

A题HDU – 4704

首先是挡板法(隔板法),然后用\binom{n}{m}=\binom{n-1}{m}+\binom{n-1}{m-1}即可,高中数学范围不多叙述。

然后得到答案是2^{^{N-1}}

 

这题读入数据大10^{100000},就算快速幂也肯定TLE,所以用费马小定理,把数据规模降到int 范围内,时间复杂度降低

因为1e9+7是一个素数,(基本可以假设N-1不是1e9+7的倍数,这一点我没想到,所以没写出来。。。。)

所以可以(1e9+7)^N对(1e9+7-1)取余,以下是代码:

 

 

 

 

第二题:HDU – 1395

2^{x} \ mod\ n\equiv 1

 

这个题目暴力求出答案:每此取余数即可

如果是偶数,直接跳出,奇数一定成立(证明听说要用欧拉函数,笔者最近在看数论方面的东西,奇数证明部分留个坑。)

 

 

第三题:HDU – 5750

这题关键是素数筛

 

在素数筛里面最快的就是O(N)的复杂度

用素数和题目中给的d相乘,可以得到一些n的含有d因子的数,然后选择合适的跳出条件(其实观察题目也可以发现,在许多情况下,非常容易跳出,因为样例中有好几个是0)

(以后不管什么题都用long long)

然后又被cin比scanf()慢坑了,改scanf

 

https://cn.vjudge.net/contest/#problem/A

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/231874.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号