有时候我们面试会遇到这种问题
有10瓶矿泉水,2个空瓶子可以换一瓶新矿泉水,4个瓶盖也可以换一瓶新矿泉水。最后最多能喝到多少瓶矿泉水
谁能喝这么多瓶矿泉水还不撑死的就厉害了哈
let cont=10; // 初始的10瓶矿泉水
let gai=cont,ping=cont; // 瓶子10个 盖子10个
while(gai>=4||ping>=2){
let p=ping%2; // 瓶子余数
let g=gai%4; // 盖子余数
let p1=(ping-p)/2 // 瓶子兑换后的瓶子数量
let g1=(gai-g)/4 // 盖子兑换后的瓶子数量
ping=p+p1+g1; // 剩余瓶子可以兑换瓶子的数量
gai=g+p1+g1; // 剩余盖子可以兑换瓶子的数量
cont+=p1+g1; // 瓶子总数
}
console.log(cont);