Uva11609 teams

来源:互联网 发布:自己淘宝店铺的链接 编辑:程序博客网 时间:2024/05/23 22:16

主要是公式的推导和快速幂的使用,弹了一次,因为交大出的那本SCL快速幂的模板有点小错误

#include <iostream>#include <cmath>#include <cstdio>using namespace std;long long pow_mod(long long a,long long i,long long n){if(i == 0)  return 1%n;long long  tmp = pow_mod(a,i>>1,n);//书上tmp的类型为int    tmp = tmp*tmp%n;    if(i&1) tmp = (long long) tmp*a%n;    return tmp;}int main(){int ncase,T=1;cin >> ncase;while(ncase--){long long l;scanf("%lld",&l);long long ans = (l*pow_mod(2,l-1,1000000007))%1000000007;cout<<"Case #"<<T++<<": "<<ans<<endl;}return 0;}