超大数次幂再求余
来源:互联网 发布:菜青虫 网络歌坛 编辑:程序博客网 时间:2024/04/28 16:36
H - Super A^B mod C
Time Limit:1000MS Memory Limit:32768KB 64bit IO Format:%I64d & %I64uDescription
Given A,B,C, You should quickly calculate the result of A^B mod C.
(1<=A,C<=1000000000,1<=B<=10^1000000).
Input
There are multiply testcases. Each testcase, there is one line contains
three integers A, B and C, separated by a single space.
Output
For each testcase, output an integer, denotes the result of A^B mod C.
Sample Input
3 2 42 10 1000
Sample Output
124
某大伽的超级代码
简便代码:
//模拟乘法。将乘法编程二进制加法。#include <stdio.h>unsigned __int64 mul (unsigned __int64 a,unsigned __int64 b,unsigned __int64 c){ unsigned __int64 res=0,tmp=a%c;while(b) {if(b&1 && (res+=tmp) >= c) res -= c;if((tmp <<= 1) >= c) tmp -= c;b>>=1; }return res;}int main(void){ unsigned __int64 a,b,c,y; while (scanf("%I64u %I64u %I64u",&a,&b,&c)!=EOF) {y = 1;while(b) {if(b&1) y = mul (y,a,c);a=mul(a,a,c);b>>=1; }printf("%I64u\n",y%c); }return 0;}
0 0
- 超大数次幂再求余
- 超大背包
- 超大背包
- 超大数乘法程序
- 超大数乘法程序
- 超大数阶乘算法
- XMLHTTP-超大文本上传
- 两个超大整数相加
- Domino 数据库超大问题
- java 超大文件上传
- .net 生成超大窗体
- 超大的调用循环
- 超大数相加减
- Java读取超大文本文件
- dom4j处理超大XML
- 如何读取超大文本文件
- Linux超大文件操作
- 超大正数相加
- HDOJ-1272(判断无向图是不是树,BFS || 并查集)
- wcf学习第4天(通过配置文件来设置)
- 风起了,唯有努力活着~
- 奇葩的语言,奇葩的语法
- 阿里巴巴Dubbo实现的源码分析
- 超大数次幂再求余
- ASP.NET的内置对象:Request对象
- 20140720(更新源)
- hdu 1542(扫描线+线段树区间更新)
- 程序员的奋斗史(四十四)——大学断代史(八)——大学的友谊
- 非计算机专业基础重点
- 水晶报表 Crystal Report 调用存储过程时出错 找不到表 ,解决方法。
- 分段函数求值:从键盘输入x的值(整型),根据公式1计算并输出x和y的值。
- C++堆、栈、自由存储区、全局/静态存储区和常量存储区收藏(转)