喝汽水

来源:互联网 发布:青岛seo 编辑:程序博客网 时间:2024/05/17 02:21
有这样一道智力题:“某商店规定:三个空汽水瓶可以换一瓶汽水。小张手上有十个空汽水瓶,她最多可以换多少瓶汽水喝?”答案是5瓶,方法如下:先用9个空瓶子换3瓶汽水,喝掉3瓶满的,喝完以后4个空瓶子,用3个再换一瓶,喝掉这瓶满的,这时候剩2个空瓶子。然后你让老板先借给你一瓶汽水,喝掉这瓶满的,喝完以后用3个空瓶子换一瓶满的还给老板。如果小张手上有n个空汽水瓶,最多可以换多少瓶汽水喝?

输入描述:
输入文件最多包含10组测试数据,每个数据占一行,仅包含一个正整数n(1<=n<=100),表示小张手上的空汽水瓶数。n=0表示输入结束,你的程序不应当处理这一行。


输出描述:
对于每组测试数据,输出一行,表示最多可以喝的汽水瓶数。如果一瓶也喝不到,输出0。

输入例子:
3
10
81
0

输出例子:
1
5

40

思路:

n             a(喝的甁数)             b(空瓶数)

3               3/3=1                 3/3+3%3=1

5               第一次 5/3=1      5/3+5%2=3

                第二次  3/3=11

                    共2

6               第一次6/3=2         6/3+6%3=2     (借一瓶)

                 第二次   1                  0

7               第一次 7/3=2        7/3+7%3=3

                 第二次 3/3=11

                    共3

10             第一次  10/3=3       10/3+10%3=4

                 第二次   4/3=1           4/3+4%3=2(借一瓶)

                 第三次    +1             0

                     共5

可见,每次剩余空瓶数是0或者1时不能再换了,是2时可以借一瓶,还能在喝一瓶

关键代码是:

  n=s.nextInt();          c=0;          while(n!=0&&n!=1){          a=n/3;          b=n/3+n%3;          n=b;          c+=a;          if(n==2){          c++;          break;          }          }


<span style="font-size:24px;">import java.util.Scanner;public class Main {public static void main(String[] args) {// TODO Auto-generated method stub          Scanner s=new Scanner(System.in);          int n,a,b,c;          while(s.hasNext()){           n=s.nextInt();          c=0;          while(n!=0&&n!=1){          a=n/3;          b=n/3+n%3;          n=b;          c+=a;          if(n==2){          c++;          break;          }          }          System.out.println(c);          }                    }}</span>


0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 上古卷轴5不小心偷了东西怎么办 47牙缺失17号长长了怎么办 碎纸机过热件亮了卡住纸了怎么办 汽车买贵了2万多怎么办 宝宝眼皮被蚊子咬肿了怎么办 一岁宝宝撞头咬到舌头有伤口怎么办 二胎快生了老大特别粘人怎么办 生二胎不舍得大宝跟奶奶睡怎么办 怀二胎婆婆不帮忙带孩子怎么办 注册过的高铁用户名忘了怎么办 硕士延期毕业找好的工作怎么办 竞彩足球绑定信用卡提不了现怎么办 qq启动出现问题请卸载重装怎么办 u盘有文件打开后却是空的怎么办 王者荣耀不记得所在的区服怎么办 交易猫出售游戏账号是微信号怎么办 网银密码输错3次怎么办 无线网卡信号很好就是没网速怎么办 红米2a忘了登陆账号怎么办 qq封了密保手机没用了怎么办 乐视手机重置账号密码忘了怎么办 此版本的ios不支持银联怎么办 单反m档拍出来照片是黑色怎么办 从兴趣部落老发骚扰信息怎么办 在厂里辞一个月厂长不批怎么办 在厂里做管理被员工恐吓怎么办 在葡京娱乐输了很多钱怎么办 从珠海入镜澳门北京往返签注怎么办 艾艾灸灸了一身小子子怎么办? 微信视频已过期或已清理怎么办 视频已过期或已被清理怎么办 小孩作业不会老婆天天吵骂打怎么办 苹果手机在太阳下屏幕变暗怎么办 斗鱼的鱼丸竞猜主播结算了怎么办 附近有个小姐姐想加她好友怎么办 孩子出现听别人说话语速很快怎么办 苹果手机上的邮件删了怎么办 手机qq邮箱独立密码忘记了怎么办 哺乳期吃了人参回奶了怎么办? 扣扣邮箱里的邮件过期了怎么办 一体机的管理员账号被删除了怎么办