hdu 6027

Posted 早知如此绊人心,何如当初莫相识。

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了hdu 6027相关的知识,希望对你有一定的参考价值。

题意:t组,输入n,k,求f(1)+...f(n)的和,其中f(i)=i的k次方。

思路:n不大,所以暴力+快速幂

 1 #include<bits/stdc++.h>
 2 using namespace std;
 3 typedef long long ll;
 4 const ll mod=1e9+7;
 5 
 6 long long hh(long long a,long long b)
 7 {
 8         long long ans = 1;
 9         while(b)
10         {
11             if(b&1)
12             {
13                 ans = (ans*a)%mod;
14                 b--;
15             }
16             b/=2;
17             a = a*a%mod;
18         }
19         return ans;
20 }
21 int main(){
22     int t;
23     scanf("%d",&t);
24     while(t--){
25        int n,k;
26        scanf("%d%d",&n,&k);
27        int sum=1;
28        for(int i=2;i<=n;i++){
29             sum=(sum+hh(i,k)+mod)%mod;
30         }
31         printf("%d\n",(sum+mod)%mod);
32     }
33     return 0;
34 }

 

以上是关于hdu 6027的主要内容,如果未能解决你的问题,请参考以下文章

HDU - 6027 Easy Summation(快速幂)解题

hdu6027Easy Summation(快速幂取模)

HDU4057 Rescue the Rabbit(AC自动机+状压DP)

HDU3247 Resource Archiver(AC自动机+BFS+DP)

log4j.properties

POJ - 2778 ~ HDU - 2243 AC自动机+矩阵快速幂