【素数 && 快速幂】UVA
来源:互联网 发布:美国宏观经济数据 编辑:程序博客网 时间:2024/05/22 02:38
Problem Description
输入一个数,如果这个数不是素数同时满足(x^n)%n == x其中(x > 1, x < n)
思路:
正常就x^n的次方,求n次,会超时,所以用快速幂。
#include<bits/stdc++.h>using namespace std;long long Pow(long long x, long long n, long long mod)//快速幂{ long long sum = 1; while(n) { if(n & 1) sum = (sum * x) % mod; x = (x * x) % mod; n = n>>1; } return sum;}int main(){ long long n; long long i; while(~scanf("%lld", &n) && n) { for(i = 2; i * i <= n; i++) { if(n % i == 0) break; } if(i * i <= n) {//不是素数 for(i = 2; i < n; i++) { if(Pow(i, n, n) == i); else break; } if(i != n) printf("%lld is normal.\n", n); else printf("The number %lld is a Carmichael number.\n", n); } else printf("%lld is normal.\n", n);//是素数 }}
阅读全文
0 0
- 【素数 && 快速幂】UVA
- UVA 10006(素数判断+快速幂)
- UVA 10006 - Carmichael Numbers (快速幂+筛素数)
- uva 10006 Carmichael Numbers(快速幂+素数)
- UVA - 10006 - Carmichael Numbers (快速幂+素数判断)
- UVA - 10006 Carmichael Numbers(素数筛+快速幂)
- Uva 10006 Carmichael Numbers(数论、快速幂、素数筛法)
- Uva 10006 - Carmichael Numbers【素数+快速幂取模】
- UVa 10006 Carmichael Numbers 【快速幂+素数打表(埃氏筛法)】
- UVA 10006 - Carmichael Numbers 数论(快速幂取模 + 筛法求素数)
- UVA 10006 - Carmichael Numbers 数论(快速幂取模 + 筛法求素数)
- 快速幂和素数筛
- 素数 快速幂 gcd.lcm
- 快速幂 & 素数筛法
- uva 11029 【快速幂】
- UVA 11029 【快速幂】
- 快速幂 UVA
- 【hdu】 Pseudoprime numbers 伪素数(快速幂+判定素数)
- 语音识别 关于麦克风MIC的选型及技术要求
- 对 Spring 框架的详解总结
- 苹果首批ARKit应用展示 或随iOS 11一起亮相
- Spring+SpringMVC+MyBatis三大框架整合的SSM
- 关于方法名是否可以很详细的思考
- 【素数 && 快速幂】UVA
- SpringBoot中的WebSocket广播
- 基于tensorflow的简单BP神经网络的结构搭建
- JStree的使用总结
- Andorid版本更新
- 阿里巴巴的一个笔试题
- Spring整合Web项目原理
- hdu6188-贪心
- const用法总结