在計算機網路 (Computer Network) ,和性增長/乘性降低(英語:additive-increase/multiplicative-decrease、AIMD)算法是一個反饋控制算法,最廣為人知的用途是在 TCP 擁塞控制。
小埋通宵讀了計算機網路期末考後神智不清。在回家的途中,現實開始扭曲成幻想,TCP 擁塞窗口的大小開始幻化為小埋心中的數列,小埋就提出了這樣子的一個問題。
現在小埋有數列 $a$ ,但是,數列 $b$ 比數列 $a$,數列,數列 $b$ ,小埋最喜歡。
所以,小埋想要發動若干次網路控制的技能,把數列 $a$ 變成數列 $b$ 。
技能一 和性增長:數列 $a$ 中的每一項 $a_i$ 變成 $a_i + 1$
技能二 乘性降低:數列 $a$ 中的每一項 $a_i$ 變成 $\lfloor \frac{a_i}{2} \rfloor$
小埋想要知道,最少需要發動幾次技能才能使數列 $a$ 變成數列 $b$ ?
輸入的第一行有一個正整數 $N$。
第二行有 $N$ 個用空白分開的整數 $a_1, a_2, \cdots, a_N$。
第三行有 $N$ 個用空白分開的整數 $b_1, b_2, \cdots, b_N$。
輸出一個整數,代表小埋最少需要發動幾次技能。如果無論發動幾次技能都做不到,輸出 -1。
IOICamp 2022 Day2 pF
No. | Testdata Range | Constraints | Score |
---|---|---|---|
1 | 0~2 | 範例測資 | 0 |
2 | 0~30 | 無額外限制 | 100 |