第五屆藍橋杯軟體類決賽真題 C A 1 海盜分金幣

2021-07-24 23:00:42 字數 1316 閱讀 9781

/*【題目】

有5個海盜,相約進行一次帆船比賽。

比賽中天氣發生突變,他們被沖散了。

恰巧,他們都先後經過途中的乙個無名的荒島,並且每個人都信心滿滿,覺得自己是第乙個經過該島的人。

第乙個人在沙灘上發現了一堆金幣。他把金幣分成5等份。發現剛好少乙個金幣。他就從自己口袋拿出乙個金幣補充進去,

然後把屬於自己的那份拿走。

第二個到達的人也看到了金幣,他也和第乙個人一樣,把所有金幣5等分,發現剛好缺少乙個金幣,於是自己補進去乙個,

拿走了屬於自己的那份。

第三,第四,第五人的情況一模一樣。

等他們到了目的地,都說自己的情況,才恍然大悟,一起去荒島找金幣,然而再也沒有找到荒島。他們都惋惜地說:

島上還有一千多枚金幣呢!

請你根據這些資訊,推算荒島上最初有多少金幣?

【韶關學院藍橋集訓解題報告要求:需要根據題意來程式設計得出答案,不可直接給個答案】

*//*【解題思路】

數學公式推導:

設變數surplus為當第五個人拿走屬於自己的那份後島上的剩餘金幣數,surplus的取值範圍為1000~2000, 

當第五個人來島上時島上剩餘的金幣數a_5為:a_5 = (surplus + surplus/4)-1;  (其中surplus可被4整除,即surplus%4 == 0)

當第四個人來島上時島上剩餘的金幣數a_5為:a_4 = (a_5 + a_5/4)-1;  (其中a_5可被4整除,即a_5 % 4 == 0)

當第三個人來島上時島上剩餘的金幣數a_5為:a_3 = (a_4 + a_5/4)-1;  (其中a_4可被4整除,即a_4 % 4 == 0)

當第二個人來島上時島上剩餘的金幣數a_5為:a_2 = (a_3 + a_5/4)-1;  (其中a_3可被4整除,即a_3 % 4 == 0)

當第乙個人來島上時島上剩餘的金幣數a_5為:a_1 = (a_2 + a_5/4)-1;  (其中a_2可被4整除,即a_2 % 4 == 0)

最後的條件是: (a_1 + 1) % 5 == 0

推導出公式為:a_i = ( a_(i-1) + a_(i-1)/4) - 1; (其中a_i可被4整除,即a_i % 4 == 0)

得出以上規律和條件後,即可程式設計序解決問題了

得出答案為:3129 

*/#include

using namespace std;

int main()

if(flag && (surplus+1) % 5 == 0)//如果運算到最後滿足題目的條件則輸出答案 

cout<}

return 0;

}

2023年第五屆藍橋杯C C B組決賽真題題解

小明和他的表弟一起去看電影,有人問他們的年齡。小明說 今年是我們的幸運年啊。我出生年份的四位數字加起來剛好是我的年齡。表弟的也是如此。已知今年是2014年,並且,小明說的年齡指的是周歲。請推斷並填寫出小明的出生年份。這是乙個4位整數,請通過瀏覽器提交答案,不要填寫任何多餘的內容 比如,他表弟的出生年...

第五屆藍橋杯軟體類省賽真題 C A 1 猜年齡

題目 小明帶兩個妹妹參加元宵燈會。別人問她們多大了,她們調皮地說 我們倆的年齡之積是年齡之和的6倍 小明又補充說 她們可不是雙胞胎,年齡差肯定也不超過8歲啊。請你寫出 小明的較小的妹妹的年齡。注意 只寫乙個人的年齡數字,請通過瀏覽器提交答案。不要書寫任何多餘的內容。解題思路 從題目中可從抽象出兩個數...

第五屆藍橋杯軟體類省賽真題 C A 2 切麵條

題目 一根高筋拉麵,中間切一刀,可以得到2根麵條。如果先對折1次,中間切一刀,可以得到3根麵條。如果連續對折2次,中間切一刀,可以得到5根麵條。那麼,連續對折10次,中間切一刀,會得到多少麵條呢?答案是個整數,請通過瀏覽器提交答案。不要填寫任何多餘的內容。解題思路 從題目中可畫圖模擬,列出對折0 1...