- import java.util.Scanner;
- class Coca
- {
- public static void main(String[] args)
- {
- Scanner sc = new Scanner(System.in);
- //从键盘录入人数,方便查询不同人数所需要购买的瓶数
- System.out.println("输入人数:");
- int in = sc.nextInt();
- if(in<3){
- System.out.println("需要购买"+in+"瓶");
- return;
- }
- for (int x = in/3;x<in ; x++)
- {
- //原瓶数和兑换的瓶数之和
- int amount = x + getNum(x);
- if(amount<in)
- //如果不满足每人一瓶就继续判断
- continue;
- System.out.println("需要购买"+x+"瓶");
- break;
- }
- }
- public static int getNum(int num){
- if(num>=3){
- //可以兑换的瓶数,不包含原瓶数
- return num/3 + getNum(num/3+num%3);
- }
- //剩余不足3瓶,无法换取,不计数
- return 0;
- }
- }
复制代码
题目:28人买可乐喝,3个可乐瓶盖可以换一瓶可乐,那么要买多少瓶可乐,够28人喝?如果是50人,要买多少瓶?
|
|