样例通过,不知道为什么Unaccept。
#include<bits/stdc++.h>
using namespace std;
int z[105];
bool isprime(int x)
{
for (int i = 2; i * i <= x; i ++)
{
if (x % i == 0)
{
return 0;
}
}
return 1;
}
int main()
{
int t;
cin>>t;
int cnt=0;
for(int i=1; cnt<=100; i++)
{
if(isprime(i))
{
cnt++;
z[cnt]=i;
}
}
while(t--)
{
int n,q;
cin>>n>>q;
int cnt=0;
int ci=0;
while(1)
{
for(int j=n; j>=1; j--)
{
if(z[j]<=q-cnt)
{
cnt+=z[j];
ci++;
break;
}
}
if(cnt==q)
{
break;
}
}
cout<<ci<<endl;
}
return 0;
}
蒟蒻求助!!
QAQ