AT_abc153_d.[ABC153D] Caracal vs Monster

入门

通过率:0%

AC君温馨提醒

该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

カラカル正在与怪物战斗。

怪物的体力为 HH。

カラカル每次可以选择一只怪物进行攻击。攻击怪物时,根据被攻击怪物的体力,会发生以下两种情况之一:

  • 如果怪物的体力为 11,则该怪物的体力变为 00。
  • 如果怪物的体力为 X>1X > 1,则该怪物消失,并新出现 22 只体力为 ⌊X/2⌋\lfloor X/2 \rfloor 的怪物。

(⌊r⌋\lfloor r \rfloor 表示不超过 rr 的最大整数。)

如果所有怪物的体力都降为 00 或以下,カラカル就获胜。

请你求出カラカル获胜所需的最少攻击次数。

输入格式

输入以以下格式从标准输入给出。

HH

输出格式

输出カラカル获胜所需的最少攻击次数。

输入输出样例

  • 输入#1

    2

    输出#1

    3
  • 输入#2

    4

    输出#2

    7
  • 输入#3

    1000000000000

    输出#3

    1099511627775

说明/提示

限制条件

  • 1≤H≤10121 \leq H \leq 10^{12}
  • 输入中的所有数值均为整数。

样例解释 1

攻击怪物后,原本的怪物消失,出现 22 只体力为 11 的怪物。分别攻击这 22 只怪物各 11 次,总共攻击 33 次即可获胜。

由 ChatGPT 4.1 翻译

输入解题思路,AI测评打分。不知道怎么写?

首页