社区讨论
B4050求助
B4050[GESP202409 五级] 挑战怪物参与者 2已保存回复 1
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 1 条
- 当前快照
- 1 份
- 快照标识符
- @m3v592wy
- 此快照首次捕获于
- 2024/11/24 13:13 去年
- 此快照最后确认于
- 2025/11/04 14:02 4 个月前
CPP
#include <bits/stdc++.h>
using namespace std;
long long n,a,b[18]{0,1,2,4,8,16,32,64,128,256,512,1024,2048,4096,8192,16384,32768,65536},ans=0;
bool f(int x)
{
if(x<2)
{
return 0;
}
for (int i=1;i<=x/2;i++)
{
if(x%i==0)
{
return 0;
}
}
return 1;
}
int main()
{
cin>>n;
for (int i=1;i<=n;i++)
{
ans=0;
cin>>a;
if(f(a)==1)
{
cout<<1;
}
for(int i=1;i<=17;i++)
{
a=a-b[i];
ans++;
if(a==0)
{
cout<<ans<<endl;
continue;
}
if(f(a)==1)
{
a=0;
ans++;
cout<<ans<<endl;
continue;
}
}
if(a<0)
{
cout<<"-1"<<endl;
}
}
return 0;
}
回复
共 1 条回复,欢迎继续交流。
正在加载回复...