码迷,mamicode.com
首页 > 其他好文 > 详细

次方求模

时间:2015-07-05 16:46:35      阅读:153      评论:0      收藏:0      [点我收藏+]

标签:

次方求模

时间限制:1000 ms  |  内存限制:65535 KB
难度:3
描述

求a的b次方对c取余的值

 

输入
第一行输入一个整数n表示测试数据的组数(n<100)
每组测试只有一行,其中有三个正整数a,b,c(1=<a,b,c<=1000000000)
输出
输出a的b次方对c取余之后的结果
样例输入
3
2 3 5
3 100 10
11 12345 12345
样例输出
3
1
10481
来源
[张云聪]原创
上传者

张云聪

参考:http://acm.nyist.net/JudgeOnline/talking.php?pid=102      56楼 

我不懂为什么这么做,记着~

 
#include<iostream>
#include<stdio.h>
using namespace std;
int dy(int m,int n,int p)
{
	if(n==0)
		return 1%p;
	int temp=dy(m,n>>1,p);
	temp=(long long)temp*temp%p;
	if(n&1)
		temp=(long long)temp*m%p;
	return temp;
}
int main()
{
	int T,m,n,p;
	cin>>T;
    while(T--)
	{
       cin>>m>>n>>p;
	   cout<<dy(m,n,p)<<endl;
	}
	return 0;
}        

版权声明:本文为博主原创文章,未经博主允许不得转载。

次方求模

标签:

原文地址:http://blog.csdn.net/zuguodexiaoguoabc/article/details/46763463

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!