HDU6027(快速幂)
来源:互联网 发布:通风管道计算软件 编辑:程序博客网 时间:2024/05/26 07:29
Easy Summation
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 131072/131072 K (Java/Others)
Total Submission(s): 449 Accepted Submission(s): 207
Problem Description
You are encountered with a traditional problem concerning the sums of powers.
Given two integers n and k. Let f(i)=ik, please evaluate the sum f(1)+f(2)+…+f(n). The problem is simple as it looks, apart from the value of n in this question is quite large.
Can you figure the answer out? Since the answer may be too large, please output the answer modulo 109+7.
Input
The first line of the input contains an integer T(1≤T≤20), denoting the number of test cases.
Each of the following T lines contains two integers n(1≤n≤10000) and k(0≤k≤5).
Output
For each test case, print a single line containing an integer modulo 109+7.
Sample Input
3
2 5
4 2
4 1
Sample Output
33
30
10
解题思路:因为n不是很大,所以直接快速幂就行。
#include<bits/stdc++.h>using namespace std;typedef long long ll;const ll mod = 1e9 + 7;ll n,k;ll quick_pow(ll i,ll x){ ll ans = 1; while(i) { if(i&1) ans = (ans*x)%mod; i >>= 1; x = (x*x)%mod; } return ans;}int main(){ int T; scanf("%d",&T); while(T--) { scanf("%lld%lld",&n,&k); ll sum = 0; for(ll i = 1; i <= n; i++) { sum += quick_pow(k,i); } sum %= mod; printf("%lld\n",sum); } return 0;}
- HDU6027(快速幂)
- HDU6027(快速幂)(水)
- HDU6027-Easy Summation
- HDU6027 Easy Summation
- 女生赛hdu6027
- HDU6027-Easy Summation-简单数学
- HDU6027 Easy Summation 2017中国大学生程序设计竞赛
- [复习]快速幂加强(快速幂+快速乘) 病毒
- 快速幂,矩阵快速幂(模板)
- 快速幂(矩阵快速幂)
- 快速幂(完整版)
- codeforces598A(快速幂)
- 快速幂(转)
- UVa1374(快速幂)
- 快速幂 (模板)
- 快速幂(模板)
- 快速幂(短)
- 高精度(快速幂)
- javaScript中的设计模式(5)单例模式
- nginx集群 配置和js 和 css 文件的访问
- UVA
- 在Linux上将自定义的 jar 包注册为 linux 服务 service
- 二分图最大匹配-匈牙利算法
- HDU6027(快速幂)
- 图解windbg查看Win7结构体
- 152. Maximum Product Subarray
- Explanation of AVOptions settings in ffmpeg 【EDVAS】
- 相关sql
- 虚拟机上 单硬盘双系统 windows和linux安装
- Linux应用软件安装基本方法
- atexit函数
- DHTML技术演示---新闻字体(一)