演都不演了,其实不用开long long
2025-05-22 21:07:03
发布于:四川
2阅读
0回复
0点赞
#include <bits/stdc++.h>
using namespace std;
int gcd(int a, int b) {
return b == 0 ? a : gcd(b, a % b);
}
int lcm(int a, int b) {
return a / gcd(a, b) * b;
}
int main() {
int n;
cin >> n;
int p[10], q[10]; // 分子和分母数组
for (int i = 0; i < n; i++) {
scanf("%d/%d", &p[i], &q[i]);
}
int lcm_q = 1; // 分母的最小公倍数
for (int i = 0; i < n; i++) {
lcm_q = lcm(lcm_q, q[i]);
}
int sum_p = 0; // 分子的和
for (int i = 0; i < n; i++) {
sum_p += p[i] * (lcm_q / q[i]);
}
int common_divisor = gcd(sum_p, lcm_q);
sum_p /= common_divisor;
lcm_q /= common_divisor;
if (lcm_q == 1) {
cout << sum_p;
} else {
cout << sum_p << "/" << lcm_q;
}
return 0;
}
这里空空如也
有帮助,赞一个