解题思路:
简单递归
注意事项:
参考代码:
#include<iostream>
using namespace std;
int get_num(int n)
{
int sum =0;
if(n==1 ||n==0) //手上没有汽水瓶时和只有一个
{
return 0;
}
if(n==2) //两个只可以换一瓶
{
return 1;
}
else if(n>=3){ //大于三瓶时相当于两个瓶子换一瓶,因为喝完又可以得到一个瓶子
return get_num(n-2)+1;
}
}
void test01()
{
int n =0;
while(cin>>n &&n!=0)
{
int res =get_num(n);
cout<<res<<endl;
}
}
int main()
{
test01();
return 0;
}
0.0分
0 人评分
C语言程序设计教程(第三版)课后习题6.5 (C++代码)浏览:730 |
【出圈】 (C语言代码)用单项循环链表浏览:843 |
点我有惊喜!你懂得!浏览:2028 |
C语言程序设计教程(第三版)课后习题10.7 (C语言代码)浏览:686 |
C语言程序设计教程(第三版)课后习题7.5 (C语言代码)浏览:590 |
矩阵转置 (C语言代码)浏览:1565 |
C二级辅导-计负均正 (C语言代码)浏览:698 |
哥德巴赫曾猜测 (C语言代码)浏览:1150 |
求圆的面积 (C语言代码)浏览:1366 |
C语言程序设计教程(第三版)课后习题6.10 (C语言代码)浏览:827 |