4 条题解

  • 1
    @ 2024-06-30 07:00:16
    #include<iostream>
    #include<cmath>
    using namespace std;
    int main(){
        int n;
        cin >> n;
        cout << floor(sqrt(n));
        //可以用数论证明,只有完全平方数编号的锁会开
        return 0;
    }
    
  • 1

    #include<bits/stdc++.h>
    using namespace std;
    int main()
    {
    int n;
    cin>>n;
    int c=0;
    int a[n+1];
    a[0]=-1;
    for(int i=1;i<=n;i++)
    {
    a[i]=0;
    }
    for(int i=1;i<=n;i++)
    {
    for(int j=i;j<=n;j+=i)
    {
    if(a[j]==0) a[j]=1;
    else a[j]=0;
    }
    }
    for(int i=1;i<=n;i++)
    {
    if(a[i]==1)c++;
    }
    cout<<c;
    return 0;
    }

  • 1
    #include<bits/stdc++.h>
    using namespace std;
    int main()
    {
    int n;
    cin>>n;
    int c=0;
    int a[n+1];
    a[0]=-1;
    for(int i=1;i<=n;i++)
    {
    a[i]=0;
    }
    for(int i=1;i<=n;i++)
    {
    for(int j=i;j<=n;j+=i)
    {
    if(a[j]==0) a[j]=1;
    else a[j]=0;
    }
    }
    for(int i=1;i<=n;i++)
    {
    if(a[i]==1)c++;
    }
    cout<<c;
    return 0;
    
    }
    
  • 1

    #include<bits/stdc++.h>
    using namespace std;
    int main()
    {
    int n;
    cin>>n;
    int c=0;
    int a[n+1];
    a[0]=-1;
    for(int i=1;i<=n;i++)
    {
    a[i]=0;
    }
    for(int i=1;i<=n;i++)
    {
    for(int j=i;j<=n;j+=i)
    {
    if(a[j]==0) a[j]=1;
    else a[j]=0;
    }
    }
    for(int i=1;i<=n;i++)
    {
    if(a[i]==1)c++;
    }
    cout<<c;
    return 0;

    }

  • 1

信息

ID
1899
难度
4
分类
(无)
标签
递交数
160
已通过
69
通过率
43%
被复制
3
上传者