今天去面试做了一道笔试编程题,白板写代码一直是硬伤,一是字太烂隔两分钟自己都看不懂了,二是脑容量太小支撑不了两位数以上加减法的运算,老感觉自己写错了...
题意大致如下:
有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可以跑一下就好了...
.