北京大学机试 最简真分数 Easy
基本思路:
无;
关键点:
无;
#include<iostream>
#include<string>
#include<vector>
#include<algorithm>
using namespace std;
vector<int>vec;
int mostin(int a, int b) {
if (b == 0) {
return a;
}
mostin(b, a%b);
}
bool charge(int a, int b) {
if (b == a || (a!=1)&&(b % a == 0))
return false;
if (mostin(a, b) == 1)
return true;
else
return false;
}
int main() {
int n;
while (cin >> n) {
if (n == 0)
break;
int cnt = 0;
vec.resize(n);
for (int i = 0; i < n; i++) {
cin >> vec[i];
}
sort(vec.begin(), vec.end());
for (int i = 0; i < n-1; i++) {
for (int j = i+1; j < n; j++) {
if (charge(vec[i], vec[j])) {
cnt++;
}
}
}
cout << cnt << endl;
}
}

浙公网安备 33010602011771号