#P2046. 这不易如反掌吗?

这不易如反掌吗?

题目描述

给定 vv可以将 如下操作:

  1. v=(v+1)mod32768v=(v+1)\mod32768
  2. v=(v2)mod32768v=(v \cdot 2)\mod32768

mod32768\mod32768 表示要对3276832768取余
你得到的是nn个整数 a1,a2,,ana_{1},a_{2},…,a_{n},使每个 aia_{i}等于 00 所需的最小操作次数各是是多少?
Tip:32768Tip:32768的二进制为10000000000000001000000000000000,为2152^{15}

输入格式

第一行包含单个整数n(1n32768)n(1≤n≤32768)——整数的个数
第二行包含nn个整数a1,a2,,an(0ai<32768)a_{1},a_{2},…,a_{n}(0≤a_{i}<32768)

输出格式

样例

4
19 32764 10240 49
14 4 4 15 

解释1919的二进制为:00000000000100110000000000010011
3276832768的二进制为:10000000000000001000000000000000
先使用11次操作一:192019\Longrightarrow 20
那么二进制变化为:00000000000101000000000000010100
再使用1313次操作二:000000000001010010000000000000000000000000010100\Longrightarrow1000000000000000
对于第二个:
3276432764的二进制为:01111111111111000111111111111100
只需要44次操作一: 011111111111110010000000000000000111111111111100\Longrightarrow1000000000000000

第三个1024010240的二进制:00101000000000000010100000000000
模数3276832768的二进制为:10000000000000001000000000000000
只需要44次操作二: 001010000000000010000000000000000010100000000000\Longrightarrow1000000000000000