标签:for cal 公式 iss href training data html ota
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 1213 Accepted Submission(s): 594
1 #include<iostream> 2 #include<cstring> 3 #include<cstdio> 4 using namespace std; 5 const long long MOD=1e9+7; 6 long long quick_pow(long long a, long long p){ 7 long long ans=1; 8 while(p){ 9 if(p&1) ans=ans*a%MOD; 10 a=a*a%MOD; 11 p>>=1; 12 } 13 return ans; 14 } 15 int main() 16 { 17 long long n, m; 18 int T; 19 cin>>T; 20 while(T--) 21 { 22 //cout<<‘*‘<<endl; 23 cin>>n>>m; 24 25 long long res=(quick_pow(2, n)-1)%MOD; 26 res=2*quick_pow(res, m-1)%MOD; 27 if(n&1) 28 res=(res+1)%MOD; 29 res=res*quick_pow(3, MOD-2)%MOD; 30 cout<<res<<endl; 31 } 32 }
个人感觉这种方法不是特别好,这里推荐nicetomeetu的题解, 是用矩阵快速幂做的,公式推的比较详细,可以借鉴一下思路。
HDU 6050 Funny Function —— 2017 Multi-University Training 2
标签:for cal 公式 iss href training data html ota
原文地址:http://www.cnblogs.com/MasterSpark/p/7265989.html