记一道模拟类面试编程题

今天去面试做了一道笔试编程题,白板写代码一直是硬伤,一是字太烂隔两分钟自己都看不懂了,二是脑容量太小支撑不了两位数以上加减法的运算,老感觉自己写错了...

题意大致如下:

有50瓶饮料,每3个空瓶子可以换一瓶饮料,问最多可以喝多少瓶(请忽略是否是同一人喝完这五十瓶...)

解法:

import java.util.Scanner;

public class Main_020 {

	public static void main(String[] args) {
		
		Scanner scanner=new Scanner(System.in);
		int ans=resolve(scanner.nextInt());
		System.out.println(ans);
		
	}
	
	private static int resolve(int n){
		
		int ans=0, empty=0;
		
		while(n+empty>=3){
			empty+=n;
			ans+=n;
			n=empty/3;
			empty=empty%3;
		}
		
		return ans+n;
	}
	
}

要是有OJ可以跑一下就好了...

.

原文地址:https://www.cnblogs.com/cc11001100/p/7100908.html