题解 | #汽水瓶#

汽水瓶

http://www.nowcoder.com/questionTerminal/fe298c55694f4ed39e256170ff2c205f

解答1:通过整数除法与模运算
int count=0;
while(n>=3)
{
int k = n / 3;
count += k; //喝掉的数量
n = n % 3 + k; //剩余的空瓶子
if(n==2)//处理尾部情况
{
count++;
break;
}
}

解答2:推理
每喝掉一瓶汽水,剩余的空瓶子都会少2瓶,而当剩余2瓶时,也可以喝一瓶
因此通过整数除法,int k = n/2; (n%2的余数小于2,不能再喝,因此k即是所求);

全部评论

相关推荐

评论
点赞
收藏
分享
牛客网
牛客企业服务