c++题目,编了个时间太长算不出来.
1个回答

#include

int shengyu(int x,int times);

using namespace std;

int main()

{

int x = 1;

int y1,y2;//x为桃子总数,y2为剩余的桃子数;y1为分前的桃子数

while(!shengyu(x,5))//

x++;

y1=x;

for(int i=5;i>0;i--)//来个循环算出5次后剩下的桃子

{

y2=(y1-1)/5*4;

y1=y2;

}

cout<

return 0;

}

int shengyu(int x,int times)

{

if (times==0) return 1;//1代表true ,0代表false,结束while的重要条件

if ((x-1)%5!=0 || x<=0) return 0;//确保剩下的桃子为正整数,while的重要循环条件

return shengyu((x-1)/5*4, times-1);//假设有至少有x个桃子,那么第一次后剩下(x-1)/5*4 个,依次递归;

}