#C1015. 魔法药水的每日分配

魔法药水的每日分配

题目背景

在一片神秘的森林里,住着一位魔法师艾尔瑞斯。她每天都会制作一种神奇的魔法药水,这种药水可以让饮用者获得一天的好运。为了让好运均匀传播到整个森林,艾尔瑞斯设计了一个独特的分配计划:

  • 第一天​,她会分发出一半的药水再加两瓶;
  • 接下来的每一天,她都将根据剩余的药水量分发出一半再加两瓶;
  • 如果剩下的药水瓶数是奇数,艾尔瑞斯会取整后分发,比如剩下的药水瓶数是5瓶时,5瓶的一半为2瓶,再加2瓶,共分发4瓶。
  • 如果剩下的药水量不够当天的分发量,则全部分发出去。比如剩下的药水瓶数是2瓶时,2瓶的一半为1瓶,再加2瓶,共需分发3瓶,但是只剩2瓶,所以就把2瓶全部分发出去。

她很好奇,按照这样的分配方式,需要多少天才能把所有药水分发完呢?快用你的智慧,帮艾尔瑞斯解答吧!

题目描述

输入为一个整数nn表示艾尔瑞斯初始拥有的魔法药水瓶数(n>0n>0)。输出为一个整数dd表示艾尔瑞斯需要多少天才能将药水全部分发完。

样例

20
3
10
2

提示

  • 使用while语句或者do-while语句或者for语句来进行循环。
  • 当剩余药水瓶数为零时,分配完成。