每台调音器只能一路乘 2 或一路除 2(下取整),可达刻度数量约为 O(log) 级,适合动态规划。
定义 dp[j] 表示:已经处理完当前前缀,且最后一个刻度恰好为 j 时的最少操作次数。为了保证序列非空前缀合法,用一个哨兵状态 dp[1]=0 作为“虚拟前驱”。
处理下一个初始刻度 val 时,枚举前一个状态 (k,v)(表示前一个刻度为 k、代价为 v):
2,得到所有 ≥k 的可达值 l,代价为 v 加上除法次数;工作室里有 n 台调音器,第 i 台当前刻度为 ai。对某一台调音器,可以任选下面两种调整方式之一,并连续使用多次:
2;同一台调音器不能既做乘法又做除法。
Scan the QR code below with WeChat to sign in
First-time scan will create your account automatically
请使用微信扫描下方二维码完成注册