A Boring Question HDU
来源:互联网 发布:如何开通淘宝客 编辑:程序博客网 时间:2024/05/16 03:35
表在下面,规律是
(1 - m^(n+1)) / (1 - m);
#include <iostream>#include <cstdio>#include <cstring>#include <cmath>#include <algorithm>#include <vector>using namespace std;typedef long long ll;const ll mod=1000000007;ll quick(ll n,ll m){ ll res=1; while(m) { if(m&1) res=res*n%mod; m>>=1; n=n*n%mod; } return res;}int main(){ int t; scanf("%d",&t); while(t--) { ll n,m; scanf("%lld%lld",&n,&m); ll ans=0; ans=quick(m,n+1); ans=ans-1; ll res=quick(m-1,mod-2); ans=ans*res%mod; printf("%lld\n",ans); }}/*LL e[510][510];void C(){ for(int i=0;i<510;i++) e[i][0]=1; for(int i=1;i<510;i++) for(int j=1;j<510;j++) e[i][j]=(e[i-1][j-1]+e[i-1][j])%mod;}int n,m,ans;vector<int>vec;void tt(int ced,int fir){ if(ced==m) { int tmp=1; for(int i=1;i<vec.size();i++) tmp*=e[vec[i]][vec[i-1]]; ans+=tmp; return ; } for(int i=fir;i<=n;i++) { vec.push_back(i); tt(ced+1,fir); vec.pop_back(); }}int main( ){ C(); for(n=0; n<=5; n++) { for(m=2; m<=5; m++) { ans = 0; vec.clear(); tt(0,0); printf("%d-%d : %d ======= ", n,m,ans); } printf("\n"); } return 0;}*/
阅读全文
0 0
- A Boring Question HDU
- 【HDU】5793 A Boring Question
- HDU 5793 A Boring Question (数学)
- HDU 5793 A Boring Question 打表找规律
- hdu 5793 A Boring Question 数学
- HDU 5793 A Boring Question(多校6)
- HDU 5793 A Boring Question(数论)
- hdu 5793 A Boring Question 数学
- hdu-5793 A Boring Question 打表找规律
- HDU-5793 A Boring Question(打表找规律)
- hdu5793 A Boring Question
- A Boring Question
- HDU5793-A Boring Question
- HDU-5793-A Boring Question(打表找规律)
- HDU-5793 A Boring Question(矩阵快速幂)
- HDU 5793 A Boring Question(快速幂+求逆元)
- hdu 5793A Boring Question 推公式(多校)
- HDU 5793 A Boring Question(快速幂&求逆元)
- 51nod 1001 数组中和等于K的数对
- Java 中Timer和TimerTask 定时器和定时任务使用的例子
- jQuery选择器总结
- 文章标题
- c++指针中0,NULL和nullptr
- A Boring Question HDU
- ThreadLocal
- H.264中I帧和IDR帧的区别
- PAT乙级1048. 数字加密(20)
- 2017第34届广州国际特许连锁加盟展览会会刊(参展商名录)
- MySQL插入表之后中文显示乱码(个人总结篇)
- ubtun系统默认是没有激活root用户
- 最小K个数之和
- 【Windows 10 应用开发】使用x-Bind标记动态获得计算结果