#include <bits/stdc++.h> using namespace std; typedef long long LL; struct Node { int fz,fm; }divs[1010]; LL GCD(LL a,LL b) { return b==0?a:GCD(b,a%b); } Node mul(Node a,Node b) { Node ans; int tfz = a.fz*b.fm+a.fm*b.fz; int tfm = a.fm*b.fm; //cout<<tfz<<" "<<tfm<<endl; int div = abs(GCD(tfz,tfm)); // cout<<div<<endl; tfz/=div; tfm/=div; ans.fm = tfm; ans.fz = tfz; return ans; } void strcin(string s,Node &T) { int len = s.length(); int ans = 0; int Rval = 1; for(int i=0;i<len;i++) { if(s[i]=='-') Rval = -1; else if(s[i]=='/') T.fz = ans*Rval,ans=0; else ans=ans*10+(s[i]-'0'); } T.fm = ans; return; } int main() { string s; int T; int index = 0; scanf("%d",&T); while(T--) { cin>>s; strcin(s,divs[index++]); } Node ans = divs[0]; for(int i=1;i<index;i++) ans = mul(ans,divs[i]); // cout<<ans.fz<<" "<<ans.fm<<endl; int Inpart = ans.fz/ans.fm; //cout<<Inpart<<endl; ans.fz%=ans.fm; int Fapart = ans.fz; if(Inpart!=0) { cout<<Inpart; if(Fapart==0) cout<<endl; else cout<<" "<<Fapart<<"/"<<ans.fm<<endl; } else { if(Fapart==0) cout<<0<<endl; else cout<<Fapart<<"/"<<ans.fm<<endl; } return 0; }