Problem:


Score: 300 points

Problem Statement

As AtCoder Beginner Contest 100 is taking place, the office of AtCoder, Inc. is decorated with a sequence of length N, a = {a_1, a_2, a_3, ..., a_N}.

Snuke, an employee, would like to play with this sequence.

Specifically, he would like to repeat the following operation as many times as possible:

For every i satisfying 1 \leq i \leq N, perform one of the following: "divide a_i by 2" and "multiply a_i by 3".  
Here, choosing "multiply a_i by 3" for every i is not allowed, and the value of a_i after the operation must be an integer.

At most how many operations can be performed?

Constraints

N is an integer between 1 and 10 \ 000 (inclusive).

a_i is an integer between 1 and 1 \ 000 \ 000 \ 000 (inclusive).

Input

Input is given from Standard Input in the following format:

N
a_1 a_2 a_3 ... a_N

Output

Print the maximum number of operations that Snuke can perform.

Sample Input 1

3
5 2 4

Sample Output 1

3

The sequence is initially {5, 2, 4}. Three operations can be performed as follows:

First, multiply a_1 by 3, multiply a_2 by 3 and divide a_3 by 2. The sequence is now {15, 6, 2}.

Next, multiply a_1 by 3, divide a_2 by 2 and multiply a_3 by 3. The sequence is now {45, 3, 6}.

Finally, multiply a_1 by 3, multiply a_2 by 3 and divide a_3 by 2. The sequence is now {135, 9, 3}.

Sample Input 2

4
631 577 243 199

Sample Output 2

0

No operation can be performed since all the elements are odd. Thus, the answer is 0.

Sample Input 3

10
2184 2126 1721 1800 1024 2528 3360 1945 1280 1776

Sample Output 3

39



Sample input:
3
5 2 4


Sample output:
3

Submission status: Accepted

Solution code:
n = int(input())
a = list(map(int, input().split()))
ans = 0
for i in a:
    k = i
    while k % 2 == 0:
        ans += 1
        k //= 2
print(ans)

Submission status: Accepted

Solution code:
n = int(input())
a = list(map(int, input().split()))
count_a = []
for i in a:
    count = 0
    while i % 2 == 0:
        i //= 2
        count += 1
    count_a.append(count)
print(sum(count_a))

Submission status: Accepted

Solution code:
n = int(input())
A = list(map(int,input().split()))
ans = 0

for i in A:
    while i % 2 == 0:
        i //= 2
        ans += 1
            
print(ans)

Submission status: Accepted

Solution code:
n = int(input())
A = list(map(int,input().split()))
ans = 0

for i in A:
    while i % 2 == 0:
        i /= 2
        ans += 1
            
print(ans)

Submission status: Accepted

Solution code:
n = int(input())
A = list(map(int,input().split()))
ans = 0

for i in A:
    if i % 2 == 0:
        while i % 2 == 0:
            i /= 2
            ans += 1
            
print(ans)

Submission status: Accepted

Solution code:
n = int(input())
a = list(map(int, input().split()))

ans = 0

for i in a:
    while i%2==0:
        ans += 1
        i = i//2
print(ans)

Submission status: Accepted

Solution code:
n = int(input())
a = list(map(int, input().split()))

a = sorted([i for i in a if i%2==0])
x = 0
ans = 0
while len(a)!=0 and a[-1]%2==0:
    if a[x] % 2 != 0:
        x += 1
    a[x] = a[x]//2
    ans += 1
print(ans)

Submission status: Accepted

Solution code:
n=int(input())
a=list(map(int,input().split()))

icnt=0
for ai in a:
    while ai>0:
        if ai%2==0:
            icnt+=1
            ai=ai//2
        else:
            break
print(icnt)

Submission status: Accepted

Solution code:
N = int(input())
a = [int(x) for x in input().split()]

ans = 0
for i in range(N):
    while a[i] % 2 == 0:
        ans += 1
        a[i] //= 2

print(ans)

Submission status: Accepted

Solution code:
n=int(input())
a=list(map(int,input().split()))
cnt=0
for i in range(n):
  while a[i]%2==0:
    a[i]//=2
    cnt+=1
print(cnt)

Submission status: Accepted

Solution code:
N=int(input())
a=list(map(int,input().split()))
count=0
for i in range(0,len(a)):
    while True:
        if a[i]%2==1:
            break
        else:
            a[i]=a[i]/2
            count+=1
print(count)

Submission status: Accepted

Solution code:
def f(a):
    i = 0
    a,r = divmod(a, 2)
    while r == 0:
        i += 1
        a,r = divmod(a, 2)
    return i

n = int(input())
a = map(int, input().split())
x = list(filter(lambda x:x > 0, map(f, a)))
print(sum(x))

Submission status: Accepted

Solution code:
n=int(input())
a=list(map(int,input().split()))
ans=0
for i in a:
    while i%2==0:
        i//=2
        ans+=1
print(ans)

Submission status: Accepted

Solution code:
N = int(input())
a = list(map(int, input().split()))
ans = 0
for i in range(N):
    cnt = 0
    while True:
        if a[i] % 2 == 0:
            a[i]//=2
            cnt+=1
        else:
            break
    ans += cnt
print(ans)

Submission status: Accepted

Solution code:
N = int(input())
*A, = map(int, input().split())
flg = 0
count = 0
index = 0
ans = 0
while 1:
    a = A[index]
    if a%2!=0:
        count = count + 1
    else:
        A[index] = a//2
        ans = ans + 1
    if count==len(A):
        break
    if index==len(A)-1:
        index = 0
        count = 0
        continue
    index = index + 1
print(ans)

Submission status: Accepted

Solution code:
A = int(input())
B = list(map(int,input().split()))
total = 0
for i in B:
    C = i
    while C % 2 == 0:
        C = C // 2
        total += 1
print(total)

Submission status: Accepted

Solution code:
n = int(input())
a = list(map(int, input().split()))
ans = 0
for i in a:
    while (i % 2 == 0):
        i /= 2
        ans += 1

print(ans)

Submission status: Accepted

Solution code:
n = int(input())
lst = list(map(int, input().split()))

ans = 0

for i in range(n):
  while lst[i]%2 == 0:
    ans += 1
    lst[i] = lst[i]//2
    
print(ans)

Submission status: Accepted

Solution code:
def f(p):
    c=0
    while p%2==0:
        c+=1
        p//=2
    return c
n=int(input())
a=list(map(int,input().split()))
print(sum([f(x) for x in a]))

Submission status: Accepted

Solution code:
import sys
input = sys.stdin.readline

N = int(input())
a = list(map(int, input().split()))
ans = 0

for ai in a:
    t = ai
    cnt = 0
    
    while t%2==0:
        t //= 2
        cnt += 1
    
    ans += cnt

print(ans)

Submission status: Accepted

Solution code:
n = int(input())
a = [int(i) for i in input().split()]
s = 0
for i in a:
    j = 1
    while i / (2 ** j) == i // (2 ** j):
        j += 1
    s += (j-1)
print(s)

Submission status: Accepted

Solution code:
import math
def main():
    N = int(input())
    A = [int(a) for a in input().split()]
    cnt = 0
    for i in range(N):
        for j in range(A[i]):
            if A[i] % 2 == 0:
                A[i] = A[i]//2
                cnt += 1
            else:
                break
    print(cnt)
if __name__ == "__main__":
    main()

Submission status: Accepted

Solution code:
import sys, re
from collections import deque, defaultdict, Counter
from math import ceil, sqrt, hypot, factorial, pi, sin, cos, radians
from itertools import accumulate, permutations, combinations, product, groupby
from operator import itemgetter, mul
from copy import deepcopy
from string import ascii_lowercase, ascii_uppercase, digits
from bisect import bisect, bisect_left
from fractions import gcd
from heapq import heappush, heappop
from functools import reduce 
def input(): return sys.stdin.readline().strip()
def INT(): return int(input())
def MAP(): return map(int, input().split())
def LIST(): return list(map(int, input().split()))
def ZIP(n): return zip(*(MAP() for _ in range(n)))
sys.setrecursionlimit(10 ** 9)
INF = float('inf')
mod = 10 ** 9 + 7

N = INT()
a = LIST()

def cnt2(A):
	i = 0
	while A%2 == 0:
		A //= 2
		i += 1

	return i

ans = 0
for i in range(N):
	ans += cnt2(a[i])

print(ans)

Submission status: Accepted

Solution code:
n = int(input())
a = list(map(int, input().split()))
ans = 0

for i in a:
    while i%2 == 0:
        ans += 1
        i //= 2

print(ans)

Submission status: Accepted

Solution code:
n = int(input())
a = list(map(int, input().split()))
ans = 0

for i in range(n):
    while a[i]%2 == 0:
        ans += 1
        a[i] //= 2

print(ans)

Submission status: Accepted

Solution code:
ans=0
n=int(input())

for i in list(map(int,input().split())):
    if i%2:continue
    while i%2==0:
        i//=2
        ans+=1
print(ans)

Submission status: Accepted

Solution code:
n = int(input())
alis = list(map(int, input().split()))
ans = 0
for i in alis:
    while i % 2 == 0:
        ans += 1
        i = i // 2
print(ans)

Submission status: Accepted

Solution code:
import collections
def prime_factorize(n):
    a = []
    while n % 2 == 0:
        a.append(2)
        n //= 2
    f = 3
    while f * f <= n:
        if n % f == 0:
            a.append(f)
            n //= f
        else:
            f += 2
    if n != 1:
        a.append(n)
    return a
def myAnswer(N: int, A: list) -> int:
    odds = [a for a in A if a % 2 == 0]
    counter = 0
    for odd in odds:
        dic = collections.Counter(prime_factorize(odd))
        counter += dic[2]
    return counter




def modelAnswer():
    tmp = 1


def main():
    N = int(input())
    A = list(map(int, input().split()))
    print(myAnswer(N, A[:]))


if __name__ == '__main__':
    main()

Submission status: Accepted

Solution code:
N = int(input())
A = list(map(int, input().split()))
ans = 0
for a in A:
    while a%2 == 0:
        a = a//2
        ans += 1
print(ans)

Submission status: Accepted

Solution code:
n = int(input())
a = list(map(int, input().split()))
ans = 0
for i in a:
  while i % 2 == 0:
    ans += 1
    i /= 2
print(ans)

Submission status: Accepted

Solution code:
def mapint_inp():
    return map(int, input().split())

def intinp():
    return int(input())

N = intinp()
a = list(mapint_inp())

mx = 0
for i in range(N):
    cnt = 0
    t = a[i]
    while t%2==0:
        cnt += 1
        t //= 2
    mx += cnt

print(mx)

Submission status: Accepted

Solution code:
n = int(input())
a = [int(i) for i in input().split()]

ans = 0

for i in range(len(a)):
  while True:
    if a[i] % 2 != 0:
      break
    elif a[i] % 2 == 0:
      a[i] = a[i] // 2
      ans += 1
    
print(ans)

Submission status: Accepted

Solution code:
n=int(input())
a=list(map(int, input().split()))
count=0
for i in range(n):
  while a[i]%2==0:
    count+=1
    a[i]=a[i]//2
print(count)

Submission status: Accepted

Solution code:
input()
*a, = map(int, input().split())
ans = 0
for i in a:
    while i%2==0:
        i /= 2
        ans += 1
print(ans)

Submission status: Accepted

Solution code:
import sys
n = int(input())
a = input().split(' ')
for i in range(len(a)):
	a[i] = int(a[i])
res = 0
for x in a :
	while (x % 2 == 0) :
		res += 1
		x /= 2
print (res)

Submission status: Accepted

Solution code:
n = int(input())
a = list(map(int, input().split()))

cnt = 0

for i in range(n):
    num = a[i]
    while num%2 == 0:
        num //= 2
        cnt += 1
print(cnt)

Submission status: Accepted

Solution code:
def main():
    def count(x):
        ret = 0
        while x % 2 == 0:
            x //= 2
            ret += 1
        return ret

    N = int(input())
    a = map(int, input().split())
    ans = sum(map(count, a))
    print(ans)


if __name__ == '__main__':
    main()

# import sys
# input = sys.stdin.readline
# 
# sys.setrecursionlimit(10 ** 7)
# 
# (int(x)-1 for x in input().split())
# rstrip()

Submission status: Accepted

Solution code:
n,*a=map(int,open(0).read().split())
cnt=0
for i in range(n):
  ai=a[i]
  for i in range(100):
    if ai%2==1:
      break
    cnt+=1
    ai//=2   
print(cnt)

Submission status: Accepted

Solution code:
n,*a=map(int,open(0).read().split())
cnt=0
for i in range(n):
  ai=a[i]
  while ai%2==0:
    cnt+=1
    ai//=2
print(cnt)

Submission status: Accepted

Solution code:
n = int(input())
al = list(map(int,input().split()))

ans = 0
for a in al:
    while True:
        if a % 2 != 0:
            break
        else:
            a //= 2
            ans += 1

print(ans)

Submission status: Accepted

Solution code:
import sys
sys.setrecursionlimit(1 << 25)
read = sys.stdin.readline
ra = range
enu = enumerate


def read_ints():
    return list(map(int, read().split()))


def read_a_int():
    return int(read())


def read_tuple(H):
    '''
    H is number of rows
    '''
    ret = []
    for _ in range(H):
        ret.append(tuple(map(int, read().split())))
    return ret


def read_col(H):
    '''
    H is number of rows
    A列、B列が与えられるようなとき
    ex1)A,B=read_col(H)    ex2) A,=read_col(H) #一列の場合
    '''
    ret = []
    for _ in range(H):
        ret.append(list(map(int, read().split())))
    return tuple(map(list, zip(*ret)))


def read_matrix(H):
    '''
    H is number of rows
    '''
    ret = []
    for _ in range(H):
        ret.append(list(map(int, read().split())))
    return ret
    # return [list(map(int, read().split())) for _ in range(H)] # 内包表記はpypyでは遅いため


MOD = 10**9 + 7
INF = 2**31  # 2147483648 > 10**9
# default import
from collections import defaultdict, Counter, deque
from operator import itemgetter
from itertools import product, permutations, combinations
from bisect import bisect_left, bisect_right  # , insort_left, insort_right

# https://atcoder.jp/contests/abc100/tasks/abc100_c

N = read_a_int()
A = read_ints()
# 2で割れる個数をカウントすれば良い
ans = 0
for a in A:
    while a % 2 == 0:
        a //= 2
        ans += 1
print(ans)

Submission status: Accepted

Solution code:
n = int(input())
*A, = map(int, input().split())
c = 0
for a in A:
    while a % 2 == 0:
        a = a//2
        c += 1
print(c)

Submission status: Accepted

Solution code:
n = int(input())
A = list(map(int,input().split()))

ans = 0
for i in A:
    b =i
    if b%2 == 0:
        while(True):
            if b %2 == 0:
                b /= 2
                ans+=1
            else:
                break
print(ans)

Submission status: Accepted

Solution code:
n=int(input())
a=list(map(int,input().split()))
ans=0
for aa in a:
  while aa/2!=0 and aa%2==0:
    aa/=2 
    ans+=1
print(ans)

Submission status: Accepted

Solution code:
N = int(input())
a = list(map(int, input().split()))

ans = 0
for x in a:
  if x % 2 == 0:
    cnt = 0
    while x % 2 == 0:
      x //= 2
      cnt += 1
    ans += cnt
print(ans)

Submission status: Accepted

Solution code:
N = int(input())
a = list(map(int, input().split()))
ans = 0
for i in range(N):
    while(a[i] % 2 == 0):
        a[i] = a[i] // 2
        ans += 1
print(ans)

Submission status: Accepted

Solution code:

N=int(input())
A=list(map(int, input().split()))
ans=0
for a in A:
    while a%2==0:
        a//=2
        ans+=1
print(ans)

Submission status: Accepted

Solution code:
n = int(input())
a = [int(i) for i in input().split()]
ans = 0
for i in a:
  while i%2 == 0:
    i = i//2
    ans += 1
    
print(ans)

Submission status: Accepted

Solution code:
from heapq import heappush, heappop
from itertools import permutations, accumulate, combinations
import math
import bisect
import numpy as np
from collections import defaultdict, deque
from operator import itemgetter
from bisect import bisect_left, bisect_right
import sys
input = sys.stdin.readline
# sys.setrecursionlimit(10 ** 6)
# MOD = 10 ** 9 + 7
# INF = float("inf")


def main():
    n = int(input())
    a = list(map(int, input().split()))
    l = [0] * n
    for i in range(n):
        cnt = 0
        while a[i] % 2 == 0:
            a[i] //= 2
            cnt += 1
        l[i] = cnt
    print(sum(l))


if __name__ == '__main__':
    main()

Submission status: Accepted

Solution code:
n = int(input())
A = list(map(int, input().split()))
ans = 0
for a in A:
    while a % 2 == 0:
        ans += 1
        a //= 2
print(ans)

Submission status: Accepted

Solution code:
n = int(input())
a = list(map(int, input().split()))

ans = 0

for i in a:
    for _ in range(1000):
        if i % 2 == 0 and i != 0:
            i /= 2
            ans += 1
        else:
            break

print(ans)

Submission status: Accepted

Solution code:
N = int(input())
A = list(map(int,input().split()))
cnt = 0
for i in range(N):
    a = A[i]
    while a%2==0:
        a = a//2
        cnt += 1
print(cnt)

Submission status: Accepted

Solution code:
n = int(input())
a = list(map(int, input().split()))
ans = 0
for i in a:
    while i%2==0:
        i//=2
        ans += 1
print(ans)

Submission status: Accepted

Solution code:
def main():
    import sys
    input = sys.stdin.readline
    N = int(input())
    A = list(map(int, input().split()))
    ans = 0
    for a in A:
        while a % 2 == 0:
            ans += 1
            a //= 2
    print(ans)


if __name__ == '__main__':
    main()

Submission status: Accepted

Solution code:
def resolve():
  n = int(input())
  ans = 0
  a = list(map(int, input().split()))
  for v in a:
    while v%2 == 0:
      v //= 2
      ans += 1
  print(ans)
  return

if __name__ == "__main__":
  resolve()

Submission status: Accepted

Solution code:
n = int(input())
a = list(map(int,input().split()))
ans = 0
for x in a:
    while x%2 == 0:
        ans +=1
        x/=2
print(ans)

Submission status: Accepted

Solution code:
import sys
read = sys.stdin.buffer.read
readline = sys.stdin.buffer.readline
readlines = sys.stdin.buffer.readlines
sys.setrecursionlimit(10 ** 7)

n = int(readline())
a = list(map(int, readline().split()))
cnt = 0
for aa in a:
    for i in range(aa):
        if aa % 2 == 0:
            cnt += 1
            aa //= 2
        else:
            break
print(cnt)

Submission status: Accepted

Solution code:
n = int(input())
a = list(map(int, input().split()))

cnt = 0
for i in range(n):
    while True:
        if a[i] % 2 == 0:
            cnt += 1
            a[i] //= 2
        else:
            break
print(cnt)

Submission status: Accepted

Solution code:
def main():
    N = int(input())
    A = [int(i) for i in input().split()]
    ans = 0
    for a in A:
        while a % 2 == 0:
            a //= 2
            ans += 1
    print(ans)


if __name__ == '__main__':
    main()

Submission status: Accepted

Solution code:
def main():
    n = int(input())
    a = [int(x) for x in input().split()]
    answer = 0
    for aa in a:
        while aa > 0 and aa % 2 == 0:
            aa //= 2
            answer += 1
    print(answer)


if __name__ == '__main__':
    main()

Submission status: Accepted

Solution code:
# solution
import io

int(input())
print(sum(map(lambda a: format(int(a), 'b')[::-1].index('1'), input().split())))

Submission status: Accepted

Solution code:
N = int(input())
a = list(map(int, input().split()))
ans = 0

for i in a:
    while True:
        if i % 2 == 0:
            ans += 1
            i //= 2
        else:
            break
print(ans)

Submission status: Accepted

Solution code:
import math
def func(a):
    global ans
    b = bin(int(a))
    for i in range(len(b)-1,1,-1):
        if b[i] == '0':
            ans += 1
        else:
            break

    return int(a)

n = int(input())
ans = 0
alist = list(map(func,input().split()))
print(ans)

Submission status: Accepted

Solution code:
import math

N = int(input())
a = list(map(int, input().split()))
ans = 0

for i in a:
    while True:
        if i % 2 == 0:
            ans += 1
            i //= 2
        else:
            break
print(ans)

Submission status: Accepted

Solution code:
N = int(input())
a = [int(i) for i in input().split()]

count = 0
flag = True
while True:
    flag = False
    for i in range(N):
        if a[i] % 2 == 0:
            a[i] = int(a[i] / 2)
            count += 1
            flag = True
    if not flag:
        break
print(count)

Submission status: Accepted

Solution code:
n = int(input())
a = list(map(int, input().split()))

cnt = 0
for ai in a:
    while ai % 2 == 0:
        ai //= 2
        cnt+=1
        
print(cnt)

Submission status: Accepted

Solution code:
import sys
readline = sys.stdin.readline
import math

def count_factor(n, d=2):
    if n % d != 0:
        return 0
    for i in range(n):
        if n & 2<<i:
            return i + 1

def main():
    N = int(readline())
    A = list(map(int, readline().rstrip().split()))

    ans = sum([count_factor(a) for a in A])
    print(ans)

if __name__ == '__main__':
    main()

Submission status: Accepted

Solution code:
import sys
readline = sys.stdin.readline
import math

def count_factor(n, d=2):
    for i in range(n):
        if n & d<<i:
            return i + 1

def main():
    N = int(readline())
    A = list(map(int, readline().rstrip().split()))

    ans = sum([count_factor(a) for a in A if a % 2 == 0])
    print(ans)

if __name__ == '__main__':
    main()

Submission status: Accepted

Solution code:
def I(): return int(input())
def LI(): return list(map(int,input().split()))
##################################################
N = I()
a = [x for x in LI() if x%2==0]
ans = 0
while 1:
    if len(a)==0:
        print(ans)
        break
    ans += len(a)
    a = [x/2 for x in a if x/2%2==0]

Submission status: Accepted

Solution code:
def I(): return int(input())
def LI(): return list(map(int,input().split()))
##################################################
N = I()
a = [x for x in LI() if x%2==0]
ans = 0
while 1:
    if len(a)==0:
        print(ans)
        break
    ans += len(a)
    for i,x in enumerate(a):
        a[i] /= 2
    a = [x for x in a if x%2==0]

Submission status: Accepted

Solution code:
from math import log
n = int(input())
a = list(map(int, input().split()))
l = []
for i in a:
    l.append(format(i, 'b')[::-1].find('1'))
print(sum(l))

Submission status: Accepted

Solution code:
N = int(input())
a = list(map(int,input().split()))

ans = 0

for i in a:
    num = i
    while i % 2 == 0:
        i  = i // 2
        ans += 1
print(ans)

Submission status: Accepted

Solution code:
n=int(input())
a=list(map(int,input().split()))
ans=0

for i in a:
    cnt=0
    while i%2==0:
        cnt+=1
        i //=2
    ans+=cnt    
print(ans)

Submission status: Accepted

Solution code:
def myAnswer(N: int, A: list) -> int:
    counter = 0
    for a in A:
        if(a % 2 == 0):
         while a %2 == 0:
            counter+=1
            a //= 2
    return counter



def modelAnswer():
    tmp = 1


def main():
    N = int(input())
    A = list(map(int, input().split()))
    print(myAnswer(N, A[:]))


if __name__ == '__main__':
    main()

Submission status: Accepted

Solution code:
n = int(input())
a = list(map(int, input().split()))
cnt = 0
for i in range(n):
    tmp = a[i]
    while tmp%2 == 0:
        tmp /= 2
        cnt += 1
print(cnt)

Submission status: Accepted

Solution code:
n=int(input())
a=[int(j) for j in input().split()]

def nimod(n):
    ans=0
    while n:
        if n%2==0:
            ans+=1
            n=n//2
        else:
            break
    return ans

ans=0
for i in a:
    ans+=nimod(i)
    
print(ans)

Submission status: Accepted

Solution code:
input()
print(sum(map(lambda x: bin(int(x))[::-1].find("1"), input().split())))

Submission status: Accepted

Solution code:
N = int(input())
a = list(map(int, input().split()))

#「3倍する」操作は考慮する必要がない
#各数値が2で何回割れるかの合計が答えとなる
ans = 0
for n in a:
    count = 0
    while n % 2 == 0:
        n //= 2
        count += 1
    ans += count

print(ans)

Submission status: Accepted

Solution code:
N = int(input())
a = list(map(int, input().split()))

ans = 0
for i in a:
    count = 0
    while True:
        if i % 2**(count+1) == 0:
            count += 1
        else:
            ans += count
            break

print(ans)

Submission status: Accepted

Solution code:
n = int(input())
A = list(map(int,input().rstrip().split(' ')))
ans=0
for a in A:
  while(a%2==0):
    a/=2
    ans+=1
print(ans)

Submission status: Accepted

Solution code:
n = int(input())
a = list(map(int,input().split()))
c = 0
for ai in a:
  while ai%2 == 0:
    ai /= 2
    c += 1
print(c)

Submission status: Accepted

Solution code:
N = int(input())
A = list(map(int, input().split()))
pi_A = 1

for a in A:
    pi_A *= a

cnt = 0
while pi_A % 2 == 0:
    pi_A = pi_A // 2
    cnt += 1

print(cnt)

Submission status: Accepted

Solution code:
N = int(input())
a = list(map(int,input().split()))
x = 0
ans = 0
for i in range(N):
  x = a.pop(0)
  while(x % 2 == 0):
    ans += 1
    x /= 2
print(str(ans))

Submission status: Accepted

Solution code:
N = int(input())
A = list(map(int,input().split()))
ans = 0
for i in range(N):
    temp = A[i]
    while not (temp & 1):
        ans += 1
        temp >>= 1
print(ans)

Submission status: Accepted

Solution code:
n = int(input())
a = list(map(int,input().split()))
ans = 0
for i in range(n):
    while a[i]%2 == 0:
        a[i] = a[i]//2
        ans += 1
print(ans)

Submission status: Accepted

Solution code:
n=int(input())
l=list(map(int,input().split()))
count=0
for i in range(n):
    while l[i]%2==0:
        l[i]//=2
        count+=1
print(count)

Submission status: Accepted

Solution code:
n = int(input())
l = list(map(int,input().split()))
s = 0
for i in l:
  while i%2==0:
    s += 1
    i //= 2
print(s)

Submission status: Accepted

Solution code:
n=int(input())
a=[0]*n
a=list(map(int,input().split()))
ans=0
for i in range(n):
  while (a[i]%2==0):
    a[i]=a[i]//2
    ans+=1
    
print(ans)

Submission status: Accepted

Solution code:
n=int(input())
*a, = map(int, input().split( ))
cnt = 0
for i in range(n):
    while a[i]%2==0:
        cnt += 1
        a[i]//=2
print(cnt)

Submission status: Accepted

Solution code:
import math, sys
from bisect import bisect_left, bisect_right
from collections import Counter, defaultdict, deque
from copy import deepcopy
from functools import lru_cache
from heapq import heapify, heappop, heappush
from itertools import accumulate, combinations, permutations
input = sys.stdin.readline
mod = 10**9 + 7
ns = lambda: input().strip()
ni = lambda: int(input().strip())
nm = lambda: map(int, input().split())
nl = lambda: list(map(int, input().split()))

n = ni()
a = nl()
ans = 0

def factorize2(n):
    a = 0
    while n % 2 == 0:
        a += 1
        n //= 2
    return a

for num in a:
    f = factorize2(num)
    if f > 0:
        ans += f

print(ans)

Submission status: Accepted

Solution code:
n = int(input())
a = list(map(int, input().split()))

def num(n, ans=0):
    if n % 2 == 0:
        return num(n // 2, ans + 1)
    return ans

print(sum(map(num, a)))

Submission status: Accepted

Solution code:
import sys

n, *a = map(int, sys.stdin.read().split())

def main():
    res = 0
    for x in a:
        while x % 2 == 0:
            res += 1
            x //= 2
    print(res)

if __name__ ==  '__main__':
    main()

Submission status: Accepted

Solution code:
N = int(input())
a = list(map(int,input().split()))
a_b = []
for b in a:
    a_b.append(format(b, 'b')[::-1].find('1'))
print(sum(a_b))

Submission status: Accepted

Solution code:
count = 0
n = int(input())
a_list = list(map(int,input().split()))
for i in range(50):
  for j in range(n):
    if a_list[j] % 2 ==0:
      a_list[j] = a_list[j] //2
      count+=1
      
print(count)

Submission status: Accepted

Solution code:
n=int(input())
li=list(map(int,input().split()))
ans=[]
for i in range(n):
	cnt=0
	while li[i]%2==0:
		li[i]=li[i]//2
		cnt+=1
	if li[i]%2==1:
		ans.append(cnt)
print(sum(ans))

Submission status: Accepted

Solution code:
#import sys
#sys.setrecursionlimit(10**9)
#from functools import reduce
#from operator import mul

#def two(a,ans):
#    if a%2==0:
#        return two(a//2,ans+1)
#    else:
#        return ans

N=int(input())
A=list(map(int,input().split()))

#ans1=0
#ans2=0
#p=reduce(mul,A)
p2=1
for a in A:
    p2*=a
#ans1=two(p,ans1)
ans3=0
while p2%2==0:
    p2//=2
    ans3+=1
#for i in range(N):
#    ans2=two(A[i],ans2)
print(ans3)

Submission status: Accepted

Solution code:
#import collections
#aa = collections.Counter(a) # list to list
#from itertools import combinations # (string,3) 3回

mod = 10**9 + 7

def readInts():
  return list(map(int,input().split()))
def main():
    n = int(input())
    r = readInts()
    cnt = 0
    for i in range(n):
        while r[i] % 2 == 0:
            cnt += 1
            r[i] //= 2
    print(cnt)



if __name__ == '__main__':
  main()

Submission status: Accepted

Solution code:
from functools import reduce
from operator import mul

def two(a,ans):
    if a%2==0:
        return two(a//2,ans+1)
    else:
        return ans

N=int(input())
A=list(map(int,input().split()))

#ans1=0
ans2=0
#p=reduce(mul,A)
#ans1=two(p,ans1)
for i in range(N):
    ans2=two(A[i],ans2)
print(ans2)

Submission status: Accepted

Solution code:
N = int(input())
a = list(map(int, input().split()))
ans = 0
for i in range(N):
    while a[i]%2 == 0:
        a[i] //= 2
        ans += 1
print(ans)

Submission status: Accepted

Solution code:
N = int(input())
a = list(map(int, input().split()))
m = 1
ans = 0

for i in range(N):
  while a[i] % 2 == 0:
    a[i] /= 2
    ans += 1
    
print(ans)

Submission status: Accepted

Solution code:
n = int(input())
a = list(map(int, input().split()))
cnt = 0

for i in a:
    while i%2 == 0:
        i = i//2
        cnt += 1
print(cnt)

Submission status: Accepted

Solution code:
n = int(input())
a = list(map(int, input().split()))
cnt = 0

for i in a:
    while True:
        if i%2 == 0:
            i = i//2
            cnt += 1
        else:
            break
print(cnt)

Submission status: Accepted

Solution code:
n = int(input())
a = list(map(int, input().split()))
cnt = 0

for i in range(n):
    while True:
        if a[i]%2 == 0:
            a[i] = a[i]//2
            cnt += 1
        else:
            break
print(cnt)

Submission status: Accepted

Solution code:
n = int(input())
li = list(map(int,input().split()))
ans = 0

for i in li:
  while i%2 == 0:
    i = i//2
    ans += 1

print(ans)

Submission status: Accepted

Solution code:
N = int(input())
A = [i for i in map(int,input().split())]
res = 0

for i in range(N):
  while A[i]%2==0:
    A[i]//=2
    res+=1
    
print(res)

Submission status: Accepted

Solution code:
N = int(input())
A = list(map(int, input().split()))

ans = 0
for a in A:
    while a % 2 == 0:
        a //= 2
        ans += 1

print(ans)

Submission status: Accepted

Solution code:
n = int(input())
an = list(map(int, input().split(' ')))


def half_count(a):
    count = 0
    while a % 2 == 0:
        a //= 2
        count += 1
    return count


result = 0
for a in an:
    result += half_count(a)

print(result)

Submission status: Accepted

Solution code:
n = int(input())
A = [int(x) for x in input().split()]

def count2by(num):
  cc = 0
  while num%2 == 0:
    cc += 1
    num //= 2
  return cc

res = 0
for a in A:
  res += count2by(a)
print(res)

Submission status: Accepted

Solution code:
n = int(input())
a = list(map(int,input().split()))
ans = 0

for i in range(n):
  count = 0
  temp = a[i]
  while (temp%2 == 0):
    temp = temp//2
    count = count + 1
    
  ans = ans + count
  
print(ans)

Submission status: Accepted

Solution code:
def ii():return int(input())
def iim():return map(int,input().split())
def iil():return list(map(int,input().split()))
def ism():return map(str,input().split())
def isl():return list(map(str,input().split()))

n = ii()
A = iil()
cnt = 0

for i in A:
    while i%2 == 0:
        cnt += 1
        i //= 2

print(cnt)

Submission status: Accepted

Solution code:
N=int(input())
L=list(map(int, input().split()))
#print(L)
ans=0
for i in range(N):
  while L[i]%2==0:
    ans+=1
    L[i]//=2
print(ans)

Submission status: Accepted

Solution code:
def bye(n):
  c = 0
  while(True):
    if n%2!=0:
      return c
    n//=2
    c+=1

n = int(input())
s = list(map(int,input().split()))
ans = 0
for i in s:
  ans += bye(i)
print(ans)

Submission status: Accepted

Solution code:
N = int(input())
A = list(map(int, input().split()))
ans = 0
for a in A:
    while a % 2 == 0:
        ans += 1
        a //= 2
print(ans)