1 条题解

  • 0
    @ 2025-11-23 21:53:41

    C++ :

     #include<bits/stdc++.h>
     using namespace std;
     map<int,int> mp;
     const int N = 1e5+10;
     int calc(int x) {
        int res = 0;
        set<int> s;
        for (int i = 2; i * i <= x; i++) {
            if (x % i == 0) {
                s.insert(i);
                while (x% i == 0){
    			     x/= i;
            	}
            }
        }
        if (x != 1) {
            s.insert(x);
        }
        return (int)s.size();
     }
     int a[N];
     int main(){
        int n;
        cin>>n;
        long long ans = 0;
        int pre = 0;
        for(int i=1;i<=n;i++){
            cin>>a[i];
            int x = calc(a[i]);
            if(x==2)cout<<"1\n";
            else cout<<"0\n";
        }
        
    }
    

    信息

    ID
    5651
    时间
    1000ms
    内存
    128MiB
    难度
    (无)
    标签
    递交数
    0
    已通过
    0
    上传者