Buggy python submission (verdict: Time Limit Exceeded):
N = int(input())
ans = 0
for i in range(1,N+1):
    for j in  range(1,N+1):
        if i%j == 0:
            ans += i
print(ans)

Fixed submission:
n=int(input())
ans=0
for i in range(1,n+1): #各iについて、i*(1～n//iまでの総和)を足し合わせればよい
 k=n//i
 ans+=i*(k*(k+1)//2)
print(ans)

Buggy python submission (verdict: Runtime Error):
import sympy
import numpy as np
from operator import mul

N = int(input())
div = []
for i in range(1,N+1):
    div.append(sympy.divisor_count(i))

num = [i for i in range(1,N+1)]

combined = map(mul, div,num)
print(sum(combined))

Fixed submission:
n=int(input())
ans=0
for i in range(1,n+1): #各iについて、i*(1～n//iまでの総和)を足し合わせればよい
 k=n//i
 ans+=i*(k*(k+1)//2)
print(ans)

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

N = int(input())
total =  0
for i in range(1,N+1):
    a = i * sympy.divisor_count(i)
    total += a
print(total)

Fixed submission:
n=int(input())
ans=0
for i in range(1,n+1): #各iについて、i*(1～n//iまでの総和)を足し合わせればよい
 k=n//i
 ans+=i*(k*(k+1)//2)
print(ans)

Buggy python submission (verdict: Time Limit Exceeded):
N = int(input())
def make_divisors(n):
    lower_divisors , upper_divisors = [], []
    i = 1
    while i*i <= n:
        if n % i == 0:
            lower_divisors.append(i)
            if i != n // i:
                upper_divisors.append(n//i)
        i += 1
    return lower_divisors + upper_divisors[::-1]
total =  0
for i in range(1,N+1):
    a = i * len(make_divisors(i))
    total += a
print(total)


Fixed submission:
n=int(input())
ans=0
for i in range(1,n+1): #各iについて、i*(1～n//iまでの総和)を足し合わせればよい
 k=n//i
 ans+=i*(k*(k+1)//2)
print(ans)

Buggy python submission (verdict: Time Limit Exceeded):
N = int(input())
def make_divisors(n):
    divisors = []
    for i in range(1, int(n**0.5)+1):
        if n % i == 0:
            divisors.append(i)
            if i != n // i:
                divisors.append(n//i)

    divisors.sort()
    return divisors

total =  0
for i in range(1,N+1):
    a = i * len(make_divisors(i))
    total += a
print(total)

Fixed submission:
n=int(input())
ans=0
for i in range(1,n+1): #各iについて、i*(1～n//iまでの総和)を足し合わせればよい
 k=n//i
 ans+=i*(k*(k+1)//2)
print(ans)

Buggy python submission (verdict: Time Limit Exceeded):
def make_divisors(n):
    divisors = []
    for i in range(1, int(n**0.5)+1):
        if n % i == 0:
            divisors.append(i)
            if i != n // i:
                divisors.append(n//i)

    divisors.sort()
    return divisors


N = int(input())

total =  0
for i in range(1,N+1):
    a = i * len(make_divisors(i))
    total += a
print(total)

Fixed submission:
n=int(input())
ans=0
for i in range(1,n+1): #各iについて、i*(1～n//iまでの総和)を足し合わせればよい
 k=n//i
 ans+=i*(k*(k+1)//2)
print(ans)

Buggy python submission (verdict: Runtime Error):
import sympy
N = int(input())

total =  0
for i in range(1,N+1):
    a = i * len(sympy.divisors(i))
    total += a
print(total)

Fixed submission:
n=int(input())
ans=0
for i in range(1,n+1): #各iについて、i*(1～n//iまでの総和)を足し合わせればよい
 k=n//i
 ans+=i*(k*(k+1)//2)
print(ans)

Buggy python submission (verdict: Runtime Error):
import sympy
N = int(input())

n = len(sympy.divisors(N))

total =  0
for i in range(1,N+1):
    a = i * len(sympy.divisors(i))
    total += a
print(total)

Fixed submission:
n=int(input())
ans=0
for i in range(1,n+1): #各iについて、i*(1～n//iまでの総和)を足し合わせればよい
 k=n//i
 ans+=i*(k*(k+1)//2)
print(ans)