customr @ 2023-01-09 11:43:02
#include <bits/stdc++.h>
#include <cstdio>
using namespace std;
int a;
void fun(int a){
if (a==0){
a=1;
}else if(a==1){
a=0;
}
}
int main()
{
int n;
int a[50007];
cin>>n;
for(int i=1;i<=n;i++){
a[i]=1;
}
for(int i=1;i<=n;i++){
for(int j=1;j<=n;j++){
if(j%i==0){
fun(a[j]);
}
}
}
for (int i = 1; i <= n; i++)
{
if(a[i]==0){//统计关灯
cout<<i<<" ";
}
}
return 0;
}
by Hongzixuan0922 @ 2023-01-09 11:46:53
可以直接输出范围内的完全平方数
by juruo_zxt @ 2023-01-09 11:47:53
lz,你这个不是超时,是全wa
by SkyWave @ 2023-01-09 11:51:17
@customr 函数里的是形参,改变不了传递进去的变量的值,你需要改成引用
by customr @ 2023-01-09 14:05:28
@SkyWave 好的,我试试
by Pink_Cut_Tree @ 2023-01-21 09:08:03
@customr 建议用
bool
型函数