简单的分数通分
#include <cstdio>
#include <algorithm>
#include <cmath>
#include <cstring>
#include <queue>
#include <vector>
#include <map>
#include <string>
#include <iostream>
#include <set>
using namespace std;
int main()
{
long long t,n,m,i,j,k,l,kk,ll,a,b;
scanf("%lld",&n);
m=0;
kk=0;
ll=1;
for(i=1;i<=n;i++)
{
scanf("%lld/%lld",&j,&k);
a=kk;b=ll;
ll=k*b;
kk=a*k+b*j;
if(kk!=0)
{
a=__gcd(kk,ll);
kk/=a;
ll/=a;
}
else
{
ll=1;
}
m+=kk/ll;
kk%=ll;
if(ll<0)
{
ll=-ll;
kk=-kk;
}
}
if(m!=0&&kk!=0)
{
printf("%lld ",m);
printf("%lld/%lld",kk,ll);
}
else if(m!=0)
{
printf("%lld",m);
}
else if(kk!=0)
{
printf("%lld/%lld",kk,ll);
}
else
{
printf("0");
}
return 0;
}