【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)
相关推荐
悟能不能悟几秒前
java Date转换为string
java·开发语言
菜宾8 分钟前
java-redis面试题
java·开发语言·redis
We་ct8 分钟前
LeetCode 125. 验证回文串:双指针解法全解析与优化
前端·算法·leetcode·typescript
客卿12311 分钟前
力扣20-有效括号(多家面试题)
算法·leetcode·职场和发展
猿小羽15 分钟前
AI 学习与实战系列:Spring AI + MCP 深度实战——构建标准化、可扩展的智能 Agent 系统
java·spring boot·llm·agent·spring ai·mcp·model context protocol
木井巳24 分钟前
【递归算法】快速幂解决 pow(x,n)
java·算法·leetcode·深度优先
苦藤新鸡28 分钟前
41.有序数组(二叉搜索树)转平衡二叉树
数据结构·力扣
风景的人生38 分钟前
mybatis映射时候的注意点
java·mybatis
墨夶38 分钟前
Java冷热钱包:不是所有钱包都叫“双保险“!用户资产安全的终极守护者
java·安全·区块链
Maỿbe1 小时前
重走力扣hot的矩阵
算法·leetcode·矩阵