UVA 10006_Carmichael number
题意:
N 为合数,对于任意一个在(1,N)之间的数满足 anmodn=a,则称N为Carmichael number,对于给定的N,判断是否为Carmichael number。
分析:
素数区间筛法+快速幂
代码:
#include<cstdio>
#include<cstring>
#include<iostream>
using namespace std;
typedef long long ll;
const int maxn = 65005;
const int mod = 1e9;
int isprime[maxn], ok[maxn];
ll quick_pow(int x, int n)
{
    ll res = 1;
    int mod = n;
    while(n){
        if(n&1) res = ((ll)res * x)%mod;
        x = ((ll)x * x)%mod;
        n>>=1;
    }
    return res;
}
int main (void)
{
    int n;
    fill(ok, ok +maxn, 0);
    fill(isprime, isprime + maxn, 1);
     for(int  i = 2; i * i <= maxn; i++)
        if(isprime[i])
            for(int j = 2 * i; j < maxn; j+=i) isprime[j] = 0;
    while(~scanf("%d",&n)&&n){
        int flag = 1;
        if(isprime[n]) flag = 0;
        if(flag){
            for(int i = 2 ; i < n; i++){
                if(quick_pow(i,n)!=i){
                     flag = 0;
                    break;
                }
            }
        }
        if(flag) printf("The number %d is a Carmichael number.\n", n);
        else  printf("%d is normal.\n", n);
    }
     return 0;
}
该死一个句号WA我一万年,为什么不是PE???
UVA 10006_Carmichael number的更多相关文章
- UVA 1558 - Number Game(博弈dp)
		UVA 1558 - Number Game 题目链接 题意:20之内的数字,每次能够选一个数字,然后它的倍数,还有其它已选数的倍数组合的数都不能再选,谁先不能选数谁就输了,问赢的方法 思路:利用dp ... 
- uva 11885 - Number of Battlefields(矩阵高速幂)
		题目连接:uva 11885 - Number of Battlefields 题目大意:给出周长p,问多少种形状的周长为p的,而且该图形的最小包围矩阵的周长也是p,不包含矩形. 解题思路:矩阵高速幂 ... 
- UVA 10706 Number Sequence (找规律 + 打表 + 查找)
		Problem B Number Sequence Input: standard input Output: standard output Time Limit: 1 second A singl ... 
- uva 10706 Number Sequence(数学规律)
		题目连接:10706 - Number Sequence 题目大意:有一个有0 ~ 9组成的序列,1 1 2 1 2 3 1 2 3 4 1 2 3 4 5 ....就是第一位为1. ... 
- UVA 11885 - Number of Battlefields(斐波那契)
		11885 - Number of Battlefields 题意:给周长.求能围成的战场数目.不包含矩形. 思路:详细的递推没递推出来,可是看了网上一个规律,假设包含矩形的答案应该是斐波那契数列(可 ... 
- UVa 263 - Number Chains
		题目:给你一个数字n0.将它的每一个位的数字按递增排序生成数a,按递减排序生成数b, 新的数字为n1 = a-b,下次依照相同方法计算n1,知道出现循环,问计算了多少次. 分析:数论.模拟.直接模拟计 ... 
- UVA 12377 Number Coding --DFS
		题意:给一串数字,第一个数是Num的话,要使后面的数字组成Num个数,而且为不降的,将这Num个数分配到9个素因子上作为指数,问能组成多少个不同的数 解法:dfs一遍,看后面的数字能组成Num个不降数 ... 
- UVa 11371 - Number Theory for Newbies
		題目:給你一個數字n.將裡面每位的數又一次組合形成a,b.使得a-b最大且是9的倍數. 分析:數論. 題目要求a,b和n的位數同样,不能有前導0. 定理1:交換一個數字中的某兩個位的數,形成的新數組和 ... 
- UVa 10706 - Number Sequence
		题目大意:Sk表示从1到k的字符序列,如S4为1234,现如今有如下的序列S1S2...Sk,形如1 12 123 1234这样的序列,给一个数n,让你去这个序列第n个位置上的数字. 可以构建出一个S ... 
随机推荐
- EditText自动弹出软键盘
			editText.requestFocus() editText.isFocusable = true editText.isFocusableInTouchMode = true val timer ... 
- vue2.0 vue.extend()的拓展
			<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ... 
- jQuery核心语法
			.each只是处理jQuery对象的方法,jQuery还提供了一个通用的jQuery.each方法,用来处理对象和数组的遍历 jQuery/($).each(array, callback )jQue ... 
- C#运用存储过程新增一条记录并返回自动生成的ID
			@Hcy黄灿奕:http://blog.sina.com.cn/iihcy 前言: 1.存储过的好处: 存储过程相对于其他的数据库访问方法有以下的优点: (1)重复使用.存储过程可以重复使用,从而可以 ... 
- 慎将MBTI测试用于招聘或就业:4星|《人格魅力修炼指南》
			人格魅力修炼指南:成为理想中的自己,就靠它了!(<哈佛商业评论>增刊) <哈佛商业评论>的11篇领导者人格魅力相关的文章.比较专业. 一些重要的信息:慎将MBTI测试用于“招聘 ... 
- [转载]iTOP-4418开发板Ubuntu系统烧写方法分享
			本文转自迅为论坛:http://topeetboard.com 开发平台:iTOP-4418开发板系统:Ubuntu 1. TF卡读写速度测试烧写 Ubuntu 对于 TF 卡的要求比较高,很多老旧的 ... 
- Pycharm 设置python文件自动生成头部信息模板
			设置头部信息路径: 打开File—Settings—Editor—File and Code Templates—Python Script 输入要自动生成的头部信息模板 这样,新建py文件就会自动生 ... 
- springboot实现web应用过程中的摸爬打滚(持续更新ing)
			最近在做公司的网站项目,后端用到springboot.怎么说呢,记录总结一下自己开发过程中遇到的坑和一些心得体会,以及一些技巧.方便以后回顾复习,也供同行们参考. 开发环境:eclipse2018-1 ... 
- c++ 回调的实现
			什么是回调?通常发生在需要两个角色即调用者与实现者的情形上,即我们希望当产生某个事件时,调用实现者定义的某个函数.当然这个概念很大,不是说操作系统的信号量,条件变量什么的,是在语言级别实现,如一个Fr ... 
- react入门(下)
			react生命周期 1. 组件的三个生命周期状态: * Mount:插入真实 DOM * Update:被重新渲染 * Unmount:被移出真实 DOM2. React 为每个状态都提供了两种勾子( ... 
