masmoudi's blog

By masmoudi, history, 7 years ago, In English

I'm trying to solve the problem C http://codeforces.net/gym/101350/status/C but I don't understand why did I got TLE on test 2, while I used O(n) solution. Can anyone help me explaining it?

My solution 32444002

T=int(input())
def f(a,b):
    if b==0:
        return a
    return f(b,a%b)

for i in range(T):
    N=int(input())
    L=[int(x) for x in input().split()]
    m=L[0]
    ans=m
    for i in range(1,len(L)):
        m=f(m,L[i])
        ans+=L[i]

    print(str(ans)+" "+str(m))

Full text and comments »

  • Vote: I like it
  • +5
  • Vote: I do not like it