切面条
递归问题
#include<iostream>
using namespace std;
int ts(int a,int b)//a为对折次数,b为切的刀数
{
if(a==1)
return 2*b+1;
else return ts(a-1,2*b);//每一次切一刀相当于在对折数减一的情况下切两刀
}
int main()
{
cout<<ts(10,1)<<endl;
return 0;
}
切的刀数是乘二的,并且递归条件要给的适当更加明确会使思想难度减少很多。