/*笔记
、*pta貌似不认识scanf_s 我吐了visual不认识scanf我能说啥
怎么硕呢 这种分母分子小崽子题老烦人了
首先 gcd函数必然要用的,longlong也搞上 这个函数的理解就是辗转相除法自己找个三位数
除以两位数感觉一下即可也不用理解太深 我就是背了就完了
其次 数据分析 ab先在第一个输入并化简一下,为什么呢?这是为了搞个“基数”,
数据分析,用t表示ab的最大公约数 然后化简即可后面也是
在while循环里的数据分析1.输入cd 2.搞到其分母的最大公约数 3.分子也安排楼 化简新分式
输出也得说一下 首先a && a / b == 0 a不等于零 并且a小于b 直接输出a/b
其次a % b == 0 a等于零或者是能整除的情况 输出一个数
第三 剩下的情况就是a也不能整除b 同时a》b 这是最广泛的情况 输出假分数即可
*/
#include<stdio.h>
//#include<iostream>
//using namespace std;
typedef long long ll;
ll gcd(ll a, ll b) {
return b == 0 ? a : gcd(b, a % b);
}
int main()
{
ll n;
ll lcp, a, b, c, d;
ll i = 1;
scanf("%d", &n);
scanf("%lld/%lld", &a, &b);
ll t = gcd(a, b);
if (a) {
a /= t;
b /= t;
}
while (i < n) {
scanf("%lld/%lld", &c, &d);
lcp = b / gcd(b, d) * d;
a = a * lcp / b + c * lcp / d;
b = lcp;
ll t = gcd(a, b);
if (t) {
a /= t;
b /= t;
}
i++;
}
if (a && a / b == 0)
printf("%lld/%lld", a % b, b);
else if (a % b == 0)
printf("%lld\n", a / b);
else
printf("%lld %lld/%lld\n", a / b, a % b, b);
return 0;
}