C - !সহজ ~কঠিন -- (二分求幂)
2016-05-13 23:09
357 查看
C - !সহজ ~কঠিন
Time Limit:1000MS Memory Limit:65536KB 64bit IO Format:%lld
& %llu
Submit Status
Description
For given integers m and n, compute mn (mod 1,000,000,007). Here, A (mod M) is the remainder when A is divided by M.
Two integers m and n are given in a line.
1 ≤ n ≤ 109
Time Limit:1000MS Memory Limit:65536KB 64bit IO Format:%lld
& %llu
Submit Status
Description
For given integers m and n, compute mn (mod 1,000,000,007). Here, A (mod M) is the remainder when A is divided by M.
Input
mn
Two integers m and n are given in a line.
Output
Print mn (mod 1,000,000,007) in a line.Constraints
1 ≤ m ≤ 1001 ≤ n ≤ 109
Sample Input 1
2 3
Sample Output 1
8
Sample Input 2
5 8
Sample Output 2
390625
//方法有点像二分
#include <stdio.h> #include <math.h> #define mod 1000000007 typedef long long ll; ll pow_mod(int a,int n){ if(n==0) return 1; int x = pow_mod(a,n/2); ll ans = (ll)x*x%mod; if(n%2==1) ans =ans*a%mod; return ans; } int main(){ int m,n,i; long long sum; scanf("%d %d",&m,&n); sum = pow_mod(m,n); printf("%lld\n",sum); return 0; }
相关文章推荐
- 数字在排序数组中出现的次数
- iOS NSAttributedString和NSMutableAttributedString、NSMutableParagraphStyle的详细用法
- 请在123456789中插入3个乘号使得乘积最大
- Python菜鸟之路:Python基础
- 1.认识Html的组成结构
- 梦断代码阅读笔记01
- 检查站点(FZU_2195) 前趋图
- 用户场景描述
- Android Studio 导入第三方框架
- XML
- SPOJ 375 QTREE Query on a tree 树链剖分
- 第十二周—阅读程序(1)
- [置顶] 模板
- 在java程序中实现发送邮件的功能
- 在java程序中实现发送邮件的功能
- 在java程序中实现发送邮件的功能
- Runtime 运行时:成员变量与属性
- Java注解详解,自定义注解,利用反射解析注解
- Jersey 2.22.2 官方文档第7章学习笔记
- 团队冲刺第八、九、十天