時間限制
400 ms
記憶體限制
65536 kb
**長度限制
8000 b
判題程式
standard 作者
陳越本題的要求很簡單,就是求n個數字的和。麻煩的是,這些數字是以有理數「分子/分母」的形式給出的,你輸出的和也必須是有理數的形式。
輸入格式:
輸入第一行給出乙個正整數n(<=100)。隨後一行按格式「a1/b1 a2/b2 ...」給出n個有理數。題目保證所有分子和分母都在長整型範圍內。另外,負數的符號一定出現在分子前面。
輸出格式:
輸出上述數字和的最簡形式 —— 即將結果寫成「整數部分 分數部分」,其中分數部分寫成「分子/分母」,要求分子小於分母,且它們沒有公因子。如果結果的整數部分為0,則只輸出分數部分。
輸入樣例1:
5輸出樣例1:2/5 4/15 1/30 -2/60 8/3
3 1/3輸入樣例2:
2輸出樣例2:4/3 2/3
2輸入樣例3:
3輸出樣例3:1/3 -1/6 1/8
7/24// 小心2個分數相加時超過int範圍,換成long就ok
// 分數化簡有很多方法,這裡用的是輾轉相減法
// #include #include #include using namespace std;
struct fractional
};void reduction(fractional& a)
while (a.denominator % 2 == 0 &&a. member % 2 == 0)
long denominator = abs(a.denominator), member = abs(a.member);
if (denominator < member)
swap(denominator, member);
while (1) }
cout << a.member / temp << "/" << a.denominator / temp;
}int main()
if (sum.member == 0)
cout << 0;
else
reduction(sum);
return 0;
}
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 ...