题解:洛谷 P5720 【深基4.例4】一尺之棰

【题目来源】

洛谷:P5720 【深基4.例4】一尺之棰 - 洛谷

【题目描述】

《庄子》中说到,“一尺之棰,日取其半,万世不竭”。第一天有一根长度为 \(a\) 的木棍,从第二天开始,每天都要将这根木棍锯掉一半(每次除 \(2\),向下取整)。第几天的时候木棍的长度会变为 \(1\)

【输入】

输入一个正整数 \(a\),表示木棍长度。

【输出】

输出一个正整数,表示要第几天的时候木棍长度会变为 \(1\)

【输入样例】

100

【输出样例】

7

【算法标签】

《洛谷 P5720 一尺之锤》 #模拟#

【代码详解】

#include <bits/stdc++.h>  // 包含标准库头文件(万能头文件)
using namespace std;      // 使用标准命名空间

/**
 * 主函数 - 程序入口
 * @return 程序执行状态码(0表示成功)
 */
int main()
{
    int a;               // 定义变量:初始a
    int day = 1;         // 定义变量:天数计数器,初始为1
    
    cin >> a;            // 输入初始
    
    // 模拟细胞分裂过程(每天数量减半)
    while (a != 1)       // 当数量不为1时继续循环
    {
        a /= 2;          // 数量减半(整数除法)
        day++;           // 天数加1
    }
    
    cout << day;         // 输出总天数
    
    return 0;            // 程序正常结束
}

【运行结果】

100
7
posted @ 2026-02-16 10:37  团爸讲算法  阅读(4)  评论(0)    收藏  举报