Getting Zero
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.
Description
Suppose you have an integer $v$. In one operation, you can:
- either set $v = (v + 1) \bmod 32768$
- or set $v = (2 \cdot v) \bmod 32768$.
You are given $n$ integers $a_1, a_2, \dots, a_n$. What is the minimum number of operations you need to make each $a_i$ equal to $0$?
The first line contains the single integer $n$ ($1 \le n \le 32768$) — the number of integers.
The second line contains $n$ integers $a_1, a_2, \dots, a_n$ ($0 \le a_i < 32768$).
Print $n$ integers. The $i$-th integer should be equal to the minimum number of operations required to make $a_i$ equal to $0$.
Input
The first line contains the single integer $n$ ($1 \le n \le 32768$) — the number of integers.
The second line contains $n$ integers $a_1, a_2, \dots, a_n$ ($0 \le a_i < 32768$).
Output
Print $n$ integers. The $i$-th integer should be equal to the minimum number of operations required to make $a_i$ equal to $0$.
4
19 32764 10240 49
14 4 4 15
Note
Let's consider each $a_i$:
- $a_1 = 19$. You can, firstly, increase it by one to get $20$ and then multiply it by two $13$ times. You'll get $0$ in $1 + 13 = 14$ steps.
- $a_2 = 32764$. You can increase it by one $4$ times: $32764 \rightarrow 32765 \rightarrow 32766 \rightarrow 32767 \rightarrow 0$.
- $a_3 = 10240$. You can multiply it by two $4$ times: $10240 \rightarrow 20480 \rightarrow 8192 \rightarrow 16384 \rightarrow 0$.
- $a_4 = 49$. You can multiply it by two $15$ times.
CF Educational Codeforces Round 126
- Status
- Done
- Rule
- ACM/ICPC
- Problem
- 6
- Start at
- 2023-11-9 14:30
- End at
- 2023-11-9 17:00
- Duration
- 2.5 hour(s)
- Host
- Partic.
- 15