zoukankan      html  css  js  c++  java
  • P1226 【模板】快速幂||取余运算


    P1226 【模板】快速幂||取余运算



    时间限制 1.00s
    内存限制 125.00MB


    题目描述


    给你三个整数\(b,p,k\),求\(b^p \bmod k\)


    输入格式


    输入只有一行三个整数,分别代表\(b,p,k\)


    输出格式


    输出一行一个字符串 b^p mod k=s,其中\(b,p,k\)分别为题目给定的值,\(s\)为运算结果。


    输入输出样例


    输入 #1

    2 10 9
    

    输出 #1

    2^10 mod 9=7
    

    说明/提示


    样例输入输出 1 解释

    \(2^{10} = 1024\)\(1024 \bmod 9 = 7\)

    数据规模与约定

    • 对于\(100\%\)的数据,保证\(b,p < 2^{31}\)\(1 \leq k \lt 2^{31}\)



    推荐学委快速幂和取余运算


    代码


    #include<iostream>
    #include<cstdio>
    #include<cstring>
    #include<algorithm>
    using namespace std;
    #define ll long long
    ll qpow(ll b,ll p,ll k){
    	ll res=1; 
    	while(p){
    		if(p&1) res=res*b%k;
    		b=b*b%k;
    		p>>=1;
    	}
    	return res%k;
    }
    int main(){
    	ll b,p,k;
    	scanf("%lld %lld %lld",&b,&p,&k);
    	printf("%lld^%lld mod %lld=%lld",b,p,k,qpow(b,p,k));
    	return 0;
    }
    
  • 相关阅读:
    BigDecimal 和NumberFormat及 获取总页数的应用
    格式化小数点和百分号 DecimalFormatter
    Vue 项目开发
    js 对象补充
    Vue 实例成员
    Vue 指令
    Vue 介绍
    Vue
    request-html
    Python 中的经典类新式类
  • 原文地址:https://www.cnblogs.com/Potrem/p/Luogu_P1226.html
Copyright © 2011-2022 走看看