C++题目分享之锯木头
题目描述
《庄子》中说到,“一尺之棰,日取其半,万世不竭”。第一天有一根长度为 a(a≤10^9) 的木棍,从第二天开始,每天都要将这根木棍锯掉一半(每次除 2,向下取整)。第几天的时候木棍会变为 1?
输入格式
无
输出格式
无
输入输出样例
输入 #1
100
输出 #1
7
#include<iostream>
using namespace std;
int main()
{
long long int a,i=1; //木头长度为10的九次方,数据比较大,要用long long int
//第一天长度为a,从第二天开始才开始锯,所以i=1
cin>>a;
while(a!=1)
{
a=a/2;
i=i+1;
}
cout<<i;
return 0;
}