求助一道站外题
  • 板块灌水区
  • 楼主OceanBrawl
  • 当前回复1
  • 已保存回复1
  • 发布时间2021/12/5 23:31
  • 上次更新2023/11/3 22:48:16
查看原帖
求助一道站外题
567034
OceanBrawl楼主2021/12/5 23:31

rt,一本通1209

#include<bits/stdc++.h>
using namespace std;
int n,sa,sb=1,p,q;
int gcd(int a,int b)
{
    if(!b)return a;
    return gcd(b,a%b);
}
int lcm(int a,int b)
{
    return a*b/gcd(a,b);
}
void sum()
{
    int x=lcm(q,sb);
    p=p*x/sb;sa=sa*x/q;
    sa+=p;sb=x;
    sa/=gcd(sa,sb);sb/=gcd(sa,sb);
}
int main()
{
    cin>>n;
    while(n--)
    {
        scanf("%d/%d",&p,&q);
        sum();
    }
    if(sb==1)cout<<sa;
    else cout<<sa<<'/'<<sb;
    return 0;
}

貌似是通分过程有错,但不知道咋调

2021/12/5 23:31
加载中...