/*
求 n! 在base进制下的位数
取对数,用换底公式,预处理对数前缀和
b^x = n!
x = log_b(n!)
= log_10(n!)/log_10(b)
对x向上取整即可
*/
#include<bits/stdc++.h>
using namespace std;
#define maxn 1000005
double sum[maxn];
void init(){
for(
int i=
1;i<maxn;i++
)
sum[i]=sum[i-
1]+log(
1.0*
i);
}
int main(){
init();
int t;cin>>
t;
for(
int i=
1;i<=t;i++
){
long long n,b;
cin>>n>>
b;
double ans=sum[n]/log(
1.0*
b);
if(n==
0)ans=
0;
printf("Case %d: %lld\n",i,(
long long)(ans)+
1);
}
}
转载于:https://www.cnblogs.com/zsben991126/p/11131496.html
相关资源:各显卡算力对照表!
转载请注明原文地址: https://win8.8miu.com/read-16103.html