#35198: how to AC(80%)


1450840-0@g.puiching.edu.mo (肥余好朋友)

學校 : 不指定學校
編號 : 188719
來源 : [202.86.172.163]
最後登入時間 :
2024-03-18 13:39:58
k145. 街燈管理員 -- 板橋高中教學題 | From: [60.246.175.170] | 發表日期 : 2023-05-15 21:03

#include <iostream>
#include <set>
#include <cmath>

using namespace std;

int main() {
    int n;
    cin >> n;
    int count = 0;
    for (int i = 1; i <= n; i++) {
        set<int> factors;
        for (int j = 1; j <= sqrt(i); j++) {
            if (i % j == 0) {
                factors.insert(j);
                factors.insert(i/j);
            }
        }
        if (factors.size() % 2 == 1) {
            count++;
        }
    }
    cout << count << endl;
    return 0;
}
 
#35199: Re: how to AC(80%)


1450840-0@g.puiching.edu.mo (肥余好朋友)

學校 : 不指定學校
編號 : 188719
來源 : [202.86.172.163]
最後登入時間 :
2024-03-18 13:39:58
k145. 街燈管理員 -- 板橋高中教學題 | From: [60.246.175.170] | 發表日期 : 2023-05-15 21:13

#include 
#include 
#include 

using namespace std;

int main() {
    int n;
    cin >> n;
    int count = 0;
    for (int i = 1; i <= n; i++) {
        set factors;
        for (int j = 1; j <= sqrt(i); j++) {
            if (i % j == 0) {
                factors.insert(j);
                factors.insert(i/j);
            }
        }
        if (factors.size() % 2 == 1) {
            count++;
        }
    }
    cout << count << endl;
    return 0;
}


已AC

謝謝

 
ZeroJudge Forum