C語言 兩種方法解決五人分魚

2021-10-19 10:54:24 字數 909 閱讀 1225

a、b、c、d、e 五人在某天夜裡合夥去捕魚,到第二天凌晨時都疲憊不堪,於是各自找地方睡覺。

日上三桿,a 第乙個醒來,他將魚分為五份,把多餘的一條魚扔掉,拿走自己的乙份。

b 第二個醒來,也將魚分為五份,把多餘的一條魚扔掉拿走自己的乙份。 。

c、d、e依次醒來,也按同樣的方法拿魚。

問:他們合夥至少捕了多少條魚?以及每個人醒來時見到了多少魚?

分析:這個題目非常有趣,我開始想著倒著往回推,第五人見到最少4條魚,但是第三個人怎麼把6條魚分成四份呢?我的思路錯了。於是我又想到最後乙個人看到的魚一定是大於4的,那就計算出每乙個人見到的魚的數量,判斷這個數字是否能夠整除5,如果能,則可知道最初的魚的數量。

思路:從5開始,嘗試每乙個數字(這個數字是魚最初的數量),分別計算出後四個人見到的魚的數量記為 j、k、l、m,之後判斷 j、k、l、m是否能被5 除后餘1

#include int main()

}return 0;

}

執行結果:

思路:從5開始,嘗試每乙個數字(這個數字是最後乙個人見到魚的數量),分別計算出前四個人見到的魚的數量記為 j、k、l、m,之後判斷 j-1、k-1、l-1、m-1是否能被5 除后餘1

#include int main()

}return 0;

}

執行結果:

C語言判斷素數(兩種方法)

素數又稱質數,是指除了1和它本身外,不能被其他任何整數整除的數,例如17就是素數,因為它不能被2 16任意整數整除。思路1 判斷乙個數是否為素數,只需把m被2 m 1之間的每乙個整數去除,如果都不能被整除,那麼m就是乙個素數。思路2 另外判斷方法可以簡化,m只需被2 m之間的每乙個整數去除就可以了,...

兩種方法解決約瑟夫問題

第一種 構建迴圈鍊錶,然後不斷遍歷鍊錶直到剩下最後乙個元素。include include include include include include using namespace std typedef struct list list,link int main p next head n...

兩種方法解決排列問題

time limit 1.000 sec memory limit 128 mb problem description 有4個互不相同的數字,請按序輸出由其中三個不重複數字組成的排列。input 4個整數。output 所有排列,輸出順序見樣例。sample input 1 2 3 4 out i...