Buggy python submission (verdict: Runtime Error):

def s(l):
    if l<2:
        return 1
    else:
        return s(l-2)
ab=int(input())
ll=s(ab)
a=0
b=1
while(b):
    if(ll%10!=0):
        b=0
    else:
        a=a+1
print(a)

Fixed submission:
# v=[]
# num=251
# for i in range(num):
#     if i==0 or i==1:
#         v.append(1)
#     else:
#         v.append(i*v[i-2])
        
# for i in range(0,num,2):
#     print(i,v[i],end=' ')
#     print()

n=int(input())
if n%2!=0:
    print(0)
else:
    ans=n//10
    n=n//10
    i=1
    while(1):
        ans+=n//(5**i)
        if n//(5**i)==0:
            break
        i+=1
        
        
    print(ans)

Buggy python submission (verdict: Runtime Error):
import sys

def double_factorial(args):
    for n in args:
        if n % 2 == 0 or n < 1:
            error = 'Must enter an odd number greater than or equal to one.'
            raise ValueError(error)

    max_arg = max(args)
    total = 1
    results = []
    for arg in args:
        for i in [x for x in range(1, max_arg + 1) if x % 2 != 0]:
            if i <= arg:
                total *= i
        results.append(total)
        total = 1
    return results


if __name__ == '__main__':
    if len(sys.argv) > 1:
        if sys.argv[1] == '-n':
            arg = int(sys.argv[2])
            args = []
            for i in range(1, arg + 1):
                args.append(2 * i - 1)
            results = double_factorial(args)
        else:
            args = [int(x) for x in sys.argv[1:]]
            results = double_factorial(args)
        for result in results:
            print result
    else:
        Exception('At least one integer is expected.')


Fixed submission:
# v=[]
# num=251
# for i in range(num):
#     if i==0 or i==1:
#         v.append(1)
#     else:
#         v.append(i*v[i-2])
        
# for i in range(0,num,2):
#     print(i,v[i],end=' ')
#     print()

n=int(input())
if n%2!=0:
    print(0)
else:
    ans=n//10
    n=n//10
    i=1
    while(1):
        ans+=n//(5**i)
        if n//(5**i)==0:
            break
        i+=1
        
        
    print(ans)

Buggy python submission (verdict: Runtime Error):
n = int(input())

def fact(n):
    if n == 0:
        return 1
    return n * fact(n - 2)


s = list(str(fact(n)))
print(s)
c = 0
i = len(s) - 1
while s[i] == "0":
    c += 1
    i -= 1
print(c)

Fixed submission:
# v=[]
# num=251
# for i in range(num):
#     if i==0 or i==1:
#         v.append(1)
#     else:
#         v.append(i*v[i-2])
        
# for i in range(0,num,2):
#     print(i,v[i],end=' ')
#     print()

n=int(input())
if n%2!=0:
    print(0)
else:
    ans=n//10
    n=n//10
    i=1
    while(1):
        ans+=n//(5**i)
        if n//(5**i)==0:
            break
        i+=1
        
        
    print(ans)

Buggy python submission (verdict: Time Limit Exceeded):
def factorial(num):
    if num < 0:
        return 0
    result = 1
    for x in range(num, 0, -2):
        result *= x
    return result

def count_zero(num):
    a = str(factorial(num))
    i = len(a)-1
    count = 0
    while(i > 0):
        if(int(a[i]) == 0):
            count += 1
        else:
            break
        i -= 1
    return count

n = int(input())
print(count_zero(n))


Fixed submission:
# v=[]
# num=251
# for i in range(num):
#     if i==0 or i==1:
#         v.append(1)
#     else:
#         v.append(i*v[i-2])
        
# for i in range(0,num,2):
#     print(i,v[i],end=' ')
#     print()

n=int(input())
if n%2!=0:
    print(0)
else:
    ans=n//10
    n=n//10
    i=1
    while(1):
        ans+=n//(5**i)
        if n//(5**i)==0:
            break
        i+=1
        
        
    print(ans)