A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 恐高的鸟 中级黑马   /  2016-6-6 23:08  /  661 人查看  /  5 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文


Test2--28人买可乐喝,3个可乐瓶盖可以换一瓶可乐,那么要买多少瓶可乐,够28人喝?假如是50人,又需要买多少瓶可乐?

5 个回复

倒序浏览
我去,又是这个题,我都见了他很多次了,
我觉得用数学的思想做就比较容易,如果完全是编程的思想就绕进去了
回复 使用道具 举报
  1. public class Ancheng {

  2.         public static void main(String[] args) {

  3.                 for (int i = 1; i < 50; i++) {
  4.                         if (colaSum(i) == 28) {
  5.                                 System.out.println("买 " + i + "够28人喝");
  6.                         } else if (colaSum(i) == 50) {
  7.                                 System.out.println("买 " + i + "够50人喝");
  8.                                 break;
  9.                         }

  10.                 }
  11.         }

  12.         private static int colaSum(int n) {
  13.                 int sum = n;
  14.                 int bottleCap = n;
  15.                 for (n = 0; bottleCap > 2;) {
  16.                         n = bottleCap / 3;
  17.                         sum = sum + n;
  18.                         bottleCap = bottleCap % 3 + n;
  19.                 }
  20.                 return sum;
  21.         }
  22. }
复制代码
回复 使用道具 举报
可以的   这题有点叼
回复 使用道具 举报
package com.itheima;

public class Test10 {
        /**
         *
         * 第十題。28人买可乐喝,3个可乐瓶盖可以换一瓶可乐,
         * 那么要买多少瓶可乐,够28人喝?假如是50人,又需要买多少瓶可乐?(需写出分析思路)
         * 1人  需要买1-0瓶可乐   n=1 n-((n-1)/3)
         * 2人  需要买2-0瓶可乐   n=2 n-((n-2)/3)
         * 3人  需要买3-0瓶可乐   n=3 n-((n-3)/3)
         * 4人  需要买4-1瓶可乐
         * 5人   需要买5-1瓶可乐
         * 6人   需要买6-1瓶可乐
         * 7人   需要买7-2瓶可乐
         * 8人   需要买8-2瓶可乐
         * 9人   需要买9-2瓶可乐
         * 10人   需要买10-3瓶可乐
         * 11人   需要买11-3瓶可乐
         * 12人   需要买12-3瓶可乐
         * 13人   需要买13-4瓶可乐 n=13 n-((n-1)/3)
         * 14人   需要买14-4瓶可乐 n=14 n-((n-2)/3)
         * 15人   需要买15-4瓶可乐 n=15 n-((n-3)/3)
         *........
         */

        public static void main(String[] args) {
                // TODO Auto-generated method stub
               test1(28);
               test1(50);
        }
        private static void test1(int i) {
                // TODO Auto-generated method stub
                if(((i-1)%3)==0){
                        System.out.println("假如是"+i+"人,需要買"+(i-((i-1)/3))+"瓶可樂");
                }
                else if(((i-2)%3)==0){
                        System.out.println("假如是"+i+"人,需要買"+(i-((i-2)/3))+"瓶可樂");
                }
                else if(((i-3)%3)==0){
                        System.out.println("假如是"+i+"人,需要買"+(i-((i-3)/3))+"瓶可樂");
                }
               
        }

       

}
回复 使用道具 举报
我次,这是什么
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马