最新公告
  • 欢迎您光临信息学奥赛网,一个优质的信息学编程题库和信息学编程学习资源专业网站。欢迎加入VIP
  • Energy Crystals

    正文概述 陈老师   2026-01-20 15:15:50  

    题目描述

    有三个能量晶体,编号为 112233;我们将第 ii 个晶体的能量等级表示为 aia_i。初始时,所有晶体都未充能,即它们的能量等级均为 00。每个晶体需要被充能到等级 xx(恰好为 xx,不能超过)。

    每次操作中,你可以将任意一个晶体的能量等级增加任意正数;然而,能量晶体之间是同步的,因此每次操作后必须满足以下条件:

    • 对于任意一对晶体 iijj,必须满足 aiaj/2a_i ≥ ⌊a_j/2⌋

    问:将所有晶体充能到等级 xx 所需的最少操作次数是多少?

    输入格式

    每个测试包含多个测试用例。第一行包含一个整数 tt1t1041 ≤ t ≤ 10^4)—— 测试用例的数量。接下来是每个测试用例的描述。

    每个测试用例只有一行,包含一个整数 xx1x1091 ≤ x ≤ 10^9)。

    输出格式

    对于每个测试用例,输出一个整数——将所有能量晶体充能到等级 xx 所需的最少操作次数。

    样例

    7
    1
    5
    14
    2025
    31415
    536870910
    1000000000
    
    3
    7
    9
    23
    31
    59
    61
    

    样例1解释

    在第一个测试用例中,一种可能的操作序列是:$[0,\ 0,\ 0] → [1,\ 0,\ 0] → [1,\ 0,\ 1] → [1,\ 1,\ 1]$ 。

    在第二个测试用例中,一种可能的操作序列是:$[0,\ 0,\ 0] → [1,\ 0,\ 0] → [1,\ 1,\ 0] → [1,\ 1,\ 2] → [3,\ 1,\ 2] → [3,\ 5,\ 2] → [5,\ 5,\ 2] → [5,\ 5,\ 5]$ 。

    信息学奥赛网,一个优质的信息学奥赛学习资源平台!
    信息学奥赛网 » Energy Crystals