現在残っている数を とします.最初, です.
に含まれる素因数 の個数の和を とすると,錬金術を 回行うことで以下が成り立ちます.
錬金術を行うためには, かつ である必要があります.
逆に, かつ が成り立つならば, に含まれる の倍数とその他の数を適当に選ぶことで必ず錬金術を行うことができます.
よって, に含まれる素因数 の個数の和を とすると,求める答えは です.
xxxxxxxxxx
N = int(input())
A = list(map(int,input().split()))
cnt = 0
for a in A:
while a%2==0:
cnt += 1
a //= 2
print(min(N-1,cnt))