小明带20块钱去喝酒,啤酒两块钱一瓶,两个瓶可以换一瓶酒,四个瓶盖可以换一瓶酒,问小明总共能喝几瓶酒?
代码如下
#include <stdio.h>
#define money 20
int main() {
int jiu = money/2;//喝
int ping=jiu;//剩的瓶
int gai=jiu;//剩的盖子
for(;;){
if (ping>1){//换了喝
jiu = ping/2 + jiu;
gai =ping/2+gai;
ping=ping%2+ping/2;
}
if (gai>3){//换了喝
jiu = gai/4 + jiu;
ping =gai/4+ping;
gai = gai%4+gai/4;
}
printf("酒 %d 瓶 %d 盖 %d\n", jiu, ping, gai);
if (ping<2 && gai<4){
printf("===酒 %d 瓶 %d 盖 %d===\n", jiu, ping, gai);
break;
}
}
return 0;
}