abcde五人打渔,打完睡觉,a先醒来,扔掉1条鱼,把剩下的分成5分,拿一份走了;b再醒来,也扔掉1条,把剩下的分成5份,拿一份走了;然后cde都按上面的方法取鱼。问他们一共打了多少条鱼,算法
#include <iostream>
using namespace std;
bool distributefish(int nNum)
{
int arr[5] = {0};
int nAll = nNum;
for(int i=0;i<5;i++)
{
arr[i] = (nNum - 1)/5 + 1;
if((nNum - 1)%5 != 0)
{
return false;
}
nNum = nNum - arr[i];
}
//输出
for(int i=0;i<5;i++)
{
cout<<arr[i]<<",";
}
cout<<" ||| num = "<<nAll<<endl;
return true;
}
int main()
{
int i=0;
int funcnum =0;
while(funcnum < 5)
{
if(distributefish(i*5+1))
{
funcnum ++;
}
i++;
}
return 0;
}
五组方案