#include<iostream>
#include<math.h>
using namespace std;
int greatestcommondivisor(int a, int b) {
//求最大公约数的函数
int min = (a > b) ? b : a;
int s = 1;
for (int i = 1; i <= min; i++)
if ((a % i == 0) && (b % i == 0))
s = i;
return s;
}
int main() {
string a, b; cin >> a >> b;
int lena = a.length(), lenb = b.length();
int j,k;
for (int i = 0; i < lena; i++)
if (a[i] == '/')j = i;
for (int i = 0; i < lenb; i++)
if (b[i] == '/')k = i;
int n1=0, n2=0, d1=0, d2=0;
for (int h = 0; h < j; h++)
n1 += (a[h]-'0') * pow(10, j - h - 1);
for (int h = 0; h < lena - 1 - j; h++)
d1 += (a[j + 1 + h] - '0') * pow(10, lena - 2 - j - h);
for (int h = 0; h < k; h++)
n2 += (b[h] - '0') * pow(10, k - h-1);
for (int h = 0; h < lenb - 1 - k; h++)
d2 += (b[k + 1 + h] - '0') * pow(10, lenb - 2 - k - h);
long int numerator = n1 * n2, denominator = d1 * d2;//分子分母
//检查分子分母最大公约数是否为1,以此判断能否约分
int g=greatestcommondivisor(numerator, denominator);
if (g == 1)cout << numerator << denominator;
else if (g >= 2)cout <<denominator / g<<" " << numerator / g;
//分子决定行序数,分母决定列序数。按要求:先输出列序数,再输出行序数
}
给出的一个错误的测试点输入是99/107 43/512, 输出是54784 4257 but不知道有啥问题T_T 求助orz!!!