D
#include <bits/stdc++.h>
#define int long long
using namespace std;
const int maxn=1e6+5;
int a[26]={0};
int b[maxn];
int c[maxn];
void init()
{
a[0]=1;
a['o'-'a']=1;
a['e'-'a']=1;
a['u'-'a']=1;
a['i'-'a']=1;
}
void solve()
{
b[0]=0;
int max_=0;
int k;
string s;
cin>>s>>k;
int kk=k;
int f=-1;
int flag=0;
int pre=-1;
int cnt=0;
int bnt=0;
for(int i=0;i<s.size();i++)
{
if(a[s[i]-'a']==1)
{
if(f==0)
{
if(pre!=-1)
{
c[bnt]=i-pre;
bnt++;
}
}
f=1;
flag++;
}
else
{
if(f==1)
{
b[cnt]=flag;
cnt++;
pre=i;
}
flag=0;
f=0;
}
}
if(flag!=0)
{
b[cnt]=flag;
cnt++;
}
/*for(int i=0;i<cnt;i++)
{
cout<<b[i]<<" ";
}
cout<<endl;
for(int i=0;i<bnt;i++)
{
cout<<c[i]<<" ";
}
cout<<endl;*/
int sum=b[0];
max_=b[0];
int l=0;
for(int i=1;i<cnt;i++)
{
if(k>=c[i-1])
{
k-=c[i-1];
sum+=b[i];
}
else
{
while(l<i-1&&k<c[i-1])
{
k+=c[l];
sum-=b[l];
l++;
}
if(k<c[i-1])
{
sum=b[i];
l++;
}
else
{
k-=c[i-1];
sum+=b[i];
}
}
//cout<<l<<" "<<sum<<endl;
if(sum>max_)
max_=sum;
}
int sz=s.size();
cout<<min(max_+kk,sz)<<endl;
}
signed main()
{
int _=1;
cin>>_;
init();
while(_--)
solve();
return 0;
}
F
#include <bits/stdc++.h>
#define int long long
using namespace std;
typedef long long ll;
const int maxn=1e6+5;
const int N=2e7+5;
int mm[N];
int cnt[21];
bool vis[maxn];
void init()
{
for(ll i=2;i*i<maxn;i++)
{
if(!vis[i])
for(ll j=i*i;j<maxn;j*=i)
vis[j]=true;
}
}
void solve()
{
memset(mm,0,sizeof(mm));
int a,b;
cin>>a>>b;
int sum=0;
for(int i=1;i<=(int)log2(a);i++)
{
for(int j=2;j<=b;j++)
{
if(mm[i*j]==0)
{
mm[i*j]=1;
sum++;
}
}
cnt[i]=sum;
}
int res=0;
for(int i=2;i<=a;i++)
{
if(vis[i])
continue;
int xx=log2(a)/log2(i);
res+=cnt[xx];
}
cout<<res<<"\n";
}
signed main()
{
ios::sync_with_stdio(0),cin.tie(0),cout.tie(0);
int _=1;
cin>>_;
init();
while(_--)
solve();
return 0;
}