清华大学机试 约数的个数 Easy *需要注意
基本思想:
注意一下,和质因子分解思路不同,非质数也要放在内;
关键点:
还是折半对称查找,自己也推出来了;
#include<iostream>
#include<vector>
#include<algorithm>
#include<string>
#include<cmath>
#include<set>
using namespace std;
int n,m;
void charge(int x) {
int sqr =sqrt(x);
int cnt=0;
for (int i = 1; i <= sqr; i++) {
if (x%i == 0) {
cnt++;
}
}
cout << cnt*2 << endl;
}
int main() {
while (cin>>n){
for (int i = 0; i < n; i++) {
cin >> m;
charge(m);
}
}
return 0;
}

浙公网安备 33010602011771号