You cannot submit for this problem because the contest is ended. You can click "Open in Problem Set" to view this problem in normal mode.
小美有一个长度为 n 的数组 a 。他需要将这个数组中第一个元素 a0 变成这个数组中的最大数。
小美有如下两种操作,
现在小美问你,他至少要多少次操作才能使得 a0 变成最大数。
第一行,一个正整数 n(1≤n≤105) ,代表数组的大小。
第二行输入 n 个正整数表示数组 a ,第 i 个数为 ai(1≤ai≤109) 。
一个整数,表示使得 a0 变成最大数的最小操作次数
输入
6
1 1 4 4 1 4
输出
2
说明
将 1 乘两次 2 。
记大于 a0 的数有 x 个
如果 x>1 ,则让 a0 乘 2 。
令 b 为大于 a0 的数构成的数组,cnti 为 bi 降到小于等于 a0 的次数。
假设每个数都 bi 都满足 a0+1≤bi≤2a0
那么要使得每个数都小于等于 a0 ,选择乘法只需要 1 次,选择除法需要 x 次,x>1 。