題目鏈接
題目描述
現代數學的著名證明之一是Georg Cantor證明了有理數是可列舉的,他是用下面這一張表來證明這一命題的:
1/1 1/2 1/3 1/4 1/5 …
2/1 2/2 2/3 2/4 …
3/1 3/2 3/3 …
4/1 4/2 …
5/1 …
… 這次與NOIp1999第一題不同的是:這次需輸入兩個分數(不一定是最簡分數),算出這兩個分數的積(注意該約分的要約分)后輸出積在原表的第幾列第幾行(若積是整數或1/積,則以“積/1”或“1/積”結算),
輸入格式
共兩行,每行輸入一個分數(不一定是最簡分數),
輸出格式
兩個整數,表示輸入的兩個分數的積在表中的第幾列第幾行,注意該約分的要約分,
輸入輸出樣例
輸入 #1
4/5
5/4
輸出 #1
1 1
說明/提示
所有資料:兩個分數的分母和分子均小于10000
代碼:
#include<stdio.h>
int main()
{
int a, b, c, d, e, f, min;
scanf("%d/%d%d/%d", &a, &b, &c, &d);
e = a * c;
f = b * d;
e < f ? min = e : min = f;
for(int i = 2; i < min; i++)
if(e % i == 0 && f % i == 0)
{
e /= i;
f /= i;
i--;
}
printf("%d %d", f, e);
return 0;
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/259795.html
標籤:區塊鏈
上一篇:【數學筆記】資訊論基礎
