//分析思路:1.首先定义一个28人喝就买28瓶,28人一共可以喝多少瓶的方法;
// 2.一共喝的瓶数始终应该大于买的瓶数;
// 3.逆向判断:当一共喝的瓶数大于人数,就少买一瓶。依次递减。
// 4.当num递减到一共喝的瓶数等于人数的时候,返回num,就是应该买的瓶数。
public class Test_10 {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
//测试:
System.out.println(castCont(28));
}
//定义一个当一共喝的瓶数大于人数的时候,买的就依次递减一瓶。
public static int castCont(int num){
int key=num;
while((subCont(num))>key){
num--;
}
return num;
}
//定义一个可以求出,有多少人就买多少瓶,一共喝多少瓶的方法,
public static int subCont(int num){
//int num;
int key=num;
int bubian=num;
int sum = 0;
int sub=0;
while((num/3)!=0){
key=num/3;
num=((num/3)+(num%3));//瓶子盖数