B. Special Numbers(1100)

#include<bits/stdc++.h>
long long MOD=1e9+7;
using namespace std;
long long T,k,n,m,sum;
int rec(int a,int b){
    if(b==0){
        return 1;
    }
    else {
        long long k=a;
        for(int i=1;i<b;i++){
            k=(k*a)%MOD;
        }
        return k;
    }
}
int main(){
    scanf("%lld",&T);
    while(T--){
        scanf("%lld %lld",&n,&m);
        sum=0;
        for(int j=0;m>0;j++){
            k=m%2;
            m/=2;
            if(k==1){
                sum+=rec(n,j);
                sum=sum%MOD;
            }        
        }
        printf("%lld\n",sum);
    }
    return 0;
}

 

上一篇:golang微服务框架go-micro 入门笔记2.2 micro工具之微应用利器micro web


下一篇:Java中的多线程=你只要看这一篇就够了