华为研发工程师编程题一——汽水瓶

华为研发工程师编程题一——汽水瓶

题目来自牛客网,感谢!

每瓶汽水喝完后留下一个空瓶,每三个空瓶可兑一瓶汽水,允许借汽水的情况下,一定数量的空瓶最多能喝多少瓶汽水?

输入格式

若干行每行输入一个N,代表拥有空瓶数
最后一行输入0,代表用例结束且不应处理此行数据
输入保证行数 < 10 <10 <10,且 1 ≤ N ≤ 100 1\leq N\leq 100 1N100

输出格式

若干行每行输出对应可喝汽水数

输入范例

3
10
81
0

输出范例

1
5
40

本题基本没有难度,最后结果显然为 ⌊ N / 2 ⌋ \lfloor N/2\rfloor N/2。问题出在OJ里,实际输入格式与给定的是不一样的,坑人啊

实际输入格式

若干行每行输入一个N,代表拥有空瓶数
以空行或文件输入时无后继行代表用例结束
输入保证行数 < 10 <10 <10,且 1 ≤ N ≤ 100 1\leq N\leq 100 1N100

实际输入范例

3
10
81
(空或空行)

我的代码实现:

import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;

public class Juice {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		String p = null;
		List<Integer> bottleList = new ArrayList<Integer>();
		while (sc.hasNextLine() && !(p = sc.nextLine()).equals(""))
			bottleList.add(Integer.valueOf(p));
		sc.close();

		for (Integer bottle : bottleList) {
			System.out.println(bottle >> 2);
		}
	}
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值