zoukankan      html  css  js  c++  java
  • 数学【p2613】 【模板】有理数取余(费马小定理)

    题目描述

    给出一个有理数 c=a/b ,求 c mod 19260817的值。

    说明

    对于所有数据, 0≤a,b≤10^10001

    分析:

    一看题 这么短 哇简单!况且19260817还是个素数!(美滋滋

    再一看数据 我天 可怕 10^10001

    一看 完了 要打高精 (但我打高精肯定GG啊

    一想 根据同余好像可做(前面的大佬讲过了我就不赘述了

    哦 对了 还有费马小定理:

    a^phi(p)≡1(mod p) (只对于p是质数的情况哦

    然后对于快读 略做修改就可以了

    --------------------代码----------------------

    #include<bits/stdc++.h>
    #define IL inline
    #define RI register int
    #define mod 19260817
    long long a,b,ans;
    IL void read(long long &x){
    	int f=1;x=0;char s=getchar();
    	while(s>'9'||s<'0'){if(s=='-')f=-1;s=getchar();}
    	while(s<='9'&&s>='0'){x=x*10%mod+(s-'0')%mod;s=getchar();}//改成了取模~~
        x=x%mod*f;//改成了取模~
    }
    IL long long ksm(long long x,long long p)
    {
    	long long res=1;
    	for(;p;p>>=1,x=x*x%mod)
    		if(p&1)res=res*x%mod;
    	return res;
    }//快速幂
    int main()
    {
    	read(a);read(b);
    	if(b==0){printf("Angry!");return 0;}
        //注意这里 特判! 不要忘记 还有 不要忘记感叹号!!!
    	ans=a*ksm(b,mod-2);
    	printf("%lld",(ans%mod+mod)%mod);
    }
    
  • 相关阅读:
    cholesky分解
    LU分解(2)
    LU分解(1)
    自定义UITableView的Seperator
    iOS屏蔽高频点击技巧
    iOS动态管理AutoLayout的约束NSLayoutConstraint
    Reachability几个常用方法
    XCode4 下制作Framework的方法
    StoryBoard 的使用
    Objective-C RunTime
  • 原文地址:https://www.cnblogs.com/-guz/p/9620089.html
Copyright © 2011-2022 走看看