【python】屈小原现在要为学校写校庆贺文(CTGU百年校庆)

题目:

"""

题目描述:

屈小原需要为学校的校庆写一篇贺文,共需写下n个字,但他目前只完成了1个字。屈小原可以进行两种操作:

在文档的末尾添加一个字,这样字数就会变为x+1。

写下与当前字数相同的内容,这样字数就会变为2x。

请问,要得到恰好n个字的贺文,屈小原最少需要进行多少次这样的操作?

输入格式:

输入一个正整数n,表示贺文的字数。

输出格式:

输出一个正整数,代表完成贺文所需的最少操作次数。

数据范围:

1≤n≤1000000

"""

代码:

python 复制代码
# 代码实现:
n = int(input())
res = 0
# 在 Python 中,任何非零整数都被视为 True,而 0 被视为 False。
while n:
    if n % 2 == 0:
        n //= 2
    else:
        n -= 1
    res += 1
print(res-1)
相关推荐
代码什么用1 小时前
Spring基础使用
java·后端·spring
信奥卷王2 小时前
[GESP202609 六级] 分树规划
算法
Su米苏2 小时前
Spring AI 中MCP 与普通 @Tool的区别
java·人工智能·spring
夏幻灵2 小时前
LeetCode 21:合并两个有序链表——双指针与哑节点详解
算法·leetcode·链表
码云数智-园园2 小时前
unique_ptr 还是 shared_ptr?C++ 智能指针选型与内存泄漏实战分析
java·开发语言
老板一杯拿铁2 小时前
Java 异常体系详解:从字节码原理到最佳实践
java
蜗牛互联网2 小时前
Java 17 HttpClient调用文件转写API的超时与失败回退
java·人工智能·后端
禾小西3 小时前
07丨Redis 哨兵机制:主库故障后,如何恢复服务?
java·开发语言·redis
我不是阵雨3 小时前
JDK 21虚拟线程Pinning陷阱:一文拔钉解困
java·开发语言