RT,感觉暴力除了IO优化之外已经优化不了了……
#include<cstring>
#include<cstdio>
using namespace std;
char s[2000000];
unsigned long long ans,l,maxn,nowl,x,mp[200];
int main(){
scanf("%s%llu",s,&l);
nowl=strlen(s);
for(unsigned long long i=0;i<nowl;++i){
mp[int(s[i])]++;
if(mp[int(s[i])]>maxn)maxn=mp[int(s[i])];
}
x=maxn;
while(nowl-x+maxn<l){
maxn=maxn<<1;
++ans;
}
printf("%llu",ans);
return 0;
}