一块钱买一瓶啤酒,两支空瓶子可以换一瓶啤酒。问20快钱你最多能喝到几瓶啤酒?

来源:百度知道 编辑:UC知道 时间:2024/06/01 01:36:55
最好补充算法

答案:39瓶
20元买20瓶酒
20个空瓶换10瓶酒
10个空瓶换5瓶酒
5个空瓶换2瓶酒(余1个空瓶)
2个空瓶换1瓶酒
1个空瓶加上前面余下的1个空瓶换1瓶酒
所以:20+10+5+2+1+1=39

20+10+5+2+1+1=39
赚了39个盖子,给宝宝玩。。。
不过2个空瓶就换的啤酒 你敢喝。你真牛,

#include <stdio.h>
int GetNum(int n)
{
static int sign = 0; //剩余酒瓶
if(n == 1)
{
if(sign == 1)
return 2;
else
{
sign = 1;
return 1;
}
}
else
{
if(n % 2 == 1 && sign == 1)
{
sign = 0;
return (n + GetNum(n / 2) + 1);
}
if(n % 2 == 1 && sign == 0)
{
sign = 1;
return (n + GetNum(n / 2));
}
if(n % 2 == 0 && sign == 0)
{
return (n + GetNum(n / 2));
}
if(n % 2 == 0 && sign == 1)
{
return (n + GetNum(n / 2));
}
}
}

int main()
{
int num;
scanf("%d", &num);
printf("%d\n", GetNum(num));

一块钱可以买到一瓶汽水,两个空瓶子可以换一瓶,有20块钱,最多可以喝到多少瓶汽水? 十元一瓶可乐,两空瓶可换一瓶,一百元最多喝几瓶? 小明要给爸爸买14瓶啤酒,3个空瓶还可以换一瓶啤酒,他最多能拿回多少瓶啤酒? ~3个空瓶可以换1支啤酒,甘买左10支啤酒总共可以饮到几支啤酒? 啤酒,三空瓶换一瓶啤酒,现有十瓶啤酒,问最多可以喝几瓶? 问:1元钱可以买一瓶汽水,2支空瓶可以换1支。那么30元钱可以买多少汽水呢? 5个空瓶子可以换一瓶,某班同学喝了161瓶,其中一些用空瓶换,那至少要买多少瓶汽水 一瓶汽水1元钱,两只空瓶可换一瓶汽水,你有20元,问你最多可喝多少瓶汽水? 一瓶汽水一块钱,两个空瓶可以换一瓶汽水,你有20块钱,可以喝多少瓶汽水? 一人买汽水,身上12块钱,汽水一块钱一瓶,三个空瓶换一瓶 问最多可以喝多少瓶