高级光能
题目链接: 酷町堂:3795
3795 分数乘法
经验值:1200 时间限制:1000毫秒 内存限制:128MB
题目描述 Deion
酷町猫最近在学习分数,它想用自己学到的计算机知识,来计算分数乘法的结果。
输入两个分数a,b,求出它们相乘的结果。
例如:
(2/4) * (2/4) ,它们的结果为:(2 * 2) / (4 * 4) = 4/16 = 1/4。
(4/2) * (4/2) ,它们的结果为:(4 * 4) / (2 * 2) = 16/4 = 4。
输入描述 Input Deion
输入4个空格隔开的整数a1,a2,b1,b2。分别表示分数a的分子,分母,分数b的分子,分母。
输出描述 Output Deion
输出分数a*b的结果(需要约分)。
样例输入 Sample Input
2 4 2 4
样例输出 Sample Output
1/4
数据范围及提示 Data Size & Hint
输入的数的数据范围均在1到100000之间
mine:
#include<iostream>
#include<cmath>
using namespace std;
long long l(long long a,long long b){
for(long long i=max(a,b);i>=sqrt(max(a,b));i--){
if(a%i==0&&b%i==0){
return i;
}
}
return 1;
}
int main(){
long long a,b,x,y,c,d,p;
cin>>a>>b>>x>>y;
p=l(a*x,b*y);
c=a*x/p;
d=b*y/p;
if(d==1){
cout<<c;
}
else{
cout<<c<<"/"<<d;
}
return 0;
}