PAT L1 009 N個數求和

2021-08-16 15:45:26 字數 1316 閱讀 1241

題目描述:

本題的要求很簡單,就是求n個數字的和。麻煩的是,這些數字是以有理數「分子/分母」的形式給出的,你輸出的和也必須是有理數的形式。

輸入格式:

輸入第一行給出乙個正整數n(<=100)。隨後一行按格式「a1/b1 a2/b2 ...」給出n個有理數。題目保證所有分子和分母都在長整型範圍內。另外,負數的符號一定出現在分子前面。

輸出格式:

輸出上述數字和的最簡形式 —— 即將結果寫成「整數部分 分數部分」,其中分數部分寫成「分子/分母」,要求分子小於分母,且它們沒有公因子。如果結果的整數部分為0,則只輸出分數部分。

輸入樣例1:

52/5 4/15 1/30 -2/60 8/3

輸出樣例1:

3 1/3

輸入樣例2:

24/3 2/3

輸出樣例2:

2輸入樣例3:

31/3 -1/6 1/8

輸出樣例3:

7/24

這個題主要在於通分,輾轉相除法是乙個很好地方法

ll fun(ll a,ll b)  

return a;

}

然後問題是n個數求和,其實就是n-1次兩個數求和,首先通分,然後相加,一直迴圈n-1次即可

完整**如下:

#include

#include

#include

#include

#include

#include

#include

#include

#include

#include

using namespace std;

typedef

long

long ll;

typedef

unsigned

long

long ull;

const

int max_n=

100000

;int n;

ll a[

110]

,b[110

];

ll fun

(ll a,ll b)

return a;

}int

main()

ll w=x/y;

x=x%y;if(

!x)

cout

!w)

cout<"/"

cout<" "<"/"

}

L1 009 N個數求和

本題的要求很簡單,就是求n個數字的和。麻煩的是,這些數字是以有理數 分子 分母 的形式給出的,你輸出的和也必須是有理數的形式。輸入格式 輸入第一行給出乙個正整數n 100 隨後一行按格式 a1 b1 a2 b2 給出n個有理數。題目保證所有分子和分母都在長整型範圍內。另外,負數的符號一定出現在分子前...

L1 009 N個數求和

時間限制 400 ms 記憶體限制 65536 kb 長度限制 8000 b 判題程式 standard 作者 陳越 本題的要求很簡單,就是求n個數字的和。麻煩的是,這些數字是以有理數 分子 分母 的形式給出的,你輸出的和也必須是有理數的形式。輸入格式 輸入第一行給出乙個正整數n 100 隨後一行按...

L1 009 N個數求和

題目鏈結 時間限制 400 ms 記憶體限制 65536 kb 長度限制 8000 b 判題程式 standard 作者 陳越 本題的要求很簡單,就是求n個數字的和。麻煩的是,這些數字是以有理數 分子 分母 的形式給出的,你輸出的和也必須是有理數的形式。輸入格式 輸入第一行給出乙個正整數n 100 ...