東華OJ高階17題公式求解

2021-10-03 06:52:04 字數 1148 閱讀 1018

17 公式求解

問題描述 :

明明剛上初中,數學課上老師教了平方的概念,即兩個相同的數相乘可以表示為這個數的平方:a×a = a 2。明明覺得這很有趣,就開始研究起來,很快掌握了這個知識點。但是在一次考試中,明明遇到了乙個難題,題目的要求是有四個正整數a、b、x、y,他們各自的平方數組成了乙個等式a2 + x2 = b2 + y2,現在已知a和b,請求出所有小於等於100的x、y,來滿足這個等式。例如給你a=2、b=5,我們可求出的解是x=5、y=2和x=11、y=10。 明明雖然明白了題目的意思,但是要自己求解卻顯得相當困難。他想了很久也沒有能夠解出這道題目。放學回家就開始問他的爸爸,他爸爸雖然對數學很精通,但是也無法一時給出正確的答案,於是他就求助於你,幫他解決這個問題。 明明的問題可以歸結為:給定兩個正整數a、b,求所有的正整數x和y,使a2 + x2 = b2 + y2,其中a、b、x、y都不大於100。在所有的有效解中,按x的大小進行排序,從小到大輸出。

輸入說明 :

你寫的程式要求從標準輸入裝置中讀入測試資料作為你所寫程式的輸入資料。標準輸入裝置中有多組測試資料:每組測試資料由乙個不大於100的正整數a後跟乙個不大於100的正整數b組成,a和b之間由乙個空格分開,形成一行資料,其行首和行尾都沒有任何空格,當a和b同時為0時,表示輸入結束;每組測試資料與其後一組測試資料之間沒有任何空行,第一組測試資料前面以及最後一組測試資料後面也都沒有任何空行。

輸出說明 :

對於每一組測試資料,你寫的程式要求計算出一組或者多組相應的運算結果,並將這一組或者多組運算結果作為你所寫程式的輸出資料依次寫入到標準輸出裝置中。每組運算結果由乙個不大於100的正整數x後跟乙個不大於100的正整數y組成,x和y之間由乙個空格分開,形成一行資料,其行首和行尾都沒有任何空格;如果有多組相應的運算結果,則按x的大小進行排序,從小到大輸出。 每組運算結果與其後一組運算結果之間有乙個空行,最後一組運算結果後面沒有空行。 注:通常,顯示屏為標準輸出裝置。

輸入範例 :

2 53 4

0 0輸出範例 :

5 211 10

4 3**:

#include

void

getxy

(int a,

int b)}}

}int

main()

return0;

}

東華oj 高階題第11題

11 abc數字 問題描述 明明的爸爸是一位著名的數學家同時也是一位著名的數學啟蒙老師。他經常出一些簡單而有趣的數學題目來給剛剛接觸數學的小朋友做,培養他們對數學的興趣。一天,明明的爸爸想到了這樣乙個題目。如果有a b c三個1位的正整數,那麼按以下的方法構成2個三位數 第一種方法是a為百位,b為十...

東華oj 高階題第21題

21 回文質數 問題描述 因為151既是乙個質數又是乙個回文數 從左到右和從右到左是看一樣的 所以 151 號是回文質數。寫乙個程式來找出範圍 a,b 5 a b 100,000 間的所有回文質數 輸入說明 僅 1 行 二個整數 a 和 b 5 a b 100,000 輸出說明 輸出乙個回文質數的列...

東華oj 高階題第31題

31 最高頻率 問題描述 明明的爸爸是一位著名的數學家。他在明明很小的時候就發現明明有過人的數學天賦,因此有意培養他對數學的興趣。一次,明明的爸爸和明明玩起了乙個數字遊戲,這個遊戲的名字叫 最高頻率 在遊戲中,明明的爸爸要求明明在一串數字中,找出出現次數最多的那個數字,如果有多個數字出現的次數一樣,...