首页 > 其他 > 详细

题解 CF630L Cracking the Code

时间:2020-10-04 20:21:19      阅读:67      评论:0      收藏:0      [点我收藏+]

前言

为什么没有人暴力快速幂啊,Ta不香嘛/kel

题意

设读入为 \(abcde\) ,求 \(acedb^5\mod{10^5}\) 的结果。

\(\sf{Solution}\)

显然暴力啊。

先把每一位求好然后把新数算出来。

快速幂就行了。

\(\sf{P.S.}\)

输出格式:一行,5个数字,没有间隔符。

若结果为 \(0\) 得输出00000

\(\sf{Code}\)

#include<iostream>
using namespace std;
#define ll long long
ll n;
const int mod=100000;
ll f(ll x,ll y)
{
    if(y==1)
        return x;
    ll q=f(x,y/2)%mod;
    q=(q*q)%mod;
    if(y%2==1)
        return (q*x)%mod;
    else return q%mod;
}//快速幂
int main()
{
	ios::sync_with_stdio(false);
	cin>>n;
	ll m=(n/1000%10)+(n/10%10)*10+(n%10)*100+(n/100%10)*1000+(n/10000%10)*10000,q=f(m,5);//m为重新组装后的数
	if(q==0)
		cout<<"00000\n";//特判0
	else cout<<q<<"\n";
	return 0;
}

题解 CF630L Cracking the Code

原文:https://www.cnblogs.com/CM-0728/p/13767823.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!