Buggy python submission (verdict: Runtime Error):
N = int(input())
zeros = [0 for i in range(10000)]
for x in range(1,100):
    for y in range(1,100):
        for z in range(1,100):
            n = x**2 + y**2 + z**2 + x*y + y*z + z*x
            if n < 10000:
                zeros[n]+=1

for i in range(N):
    print(zeros[i+1])

Fixed submission:
N = int(input())
zeros = [0 for i in range(10050)]
for x in range(1,105):
    for y in range(1,105):
        for z in range(1,105):
            n = x**2 + y**2 + z**2 + x*y + y*z + z*x
            if n < 10050:
                zeros[n]+=1

for i in range(N):
    print(zeros[i+1])

Buggy python submission (verdict: Time Limit Exceeded):
from collections import deque 
import math
def calculate(x,y,z):
    n = x**2 + y**2 + z**2 + x*y + y*z + z*x
    return n


def dfs(n,x,y,z):
    queue = deque([[x,y,z]])
    count = 0
    while queue:
        x,y,z = queue.popleft()
        for dx, dy, dz in ([1,0,0],[0,1,0],[0,0,1]):
            newx, newy, newz = x + dx, y + dy, z + dz
            ans = calculate(newx,newy,newz)
            if ans == n and [newx,newy,newz] not in queue:
                count+= 1
            if x > math.sqrt(n) or y > math.sqrt(n) or z > math.sqrt(n):
                queue = []
                break
            else:
                queue.append([newx,newy,newz])
    return count

N = int(input())
list_xyz = (1,1,1)
n = list_xyz[0]**2 + list_xyz[1]**2 + list_xyz[2]**2 + list_xyz[0]*list_xyz[1] + list_xyz[1]*list_xyz[2] + list_xyz[2]*list_xyz[0] 

for i in range(1,N+1):
  count = 0
  n = calculate(list_xyz[0], list_xyz[1], list_xyz[2])
  if n == i:
      count +=1
  # count += bfs(i, list_xyz[0], list_xyz[1], list_xyz[2])
  count += dfs(i, list_xyz[0], list_xyz[1], list_xyz[2])
  print(count)

Fixed submission:
N = int(input())
zeros = [0 for i in range(10050)]
for x in range(1,105):
    for y in range(1,105):
        for z in range(1,105):
            n = x**2 + y**2 + z**2 + x*y + y*z + z*x
            if n < 10050:
                zeros[n]+=1

for i in range(N):
    print(zeros[i+1])

Buggy python submission (verdict: Time Limit Exceeded):
from collections import deque 

def calculate(x,y,z):
    n = x**2 + y**2 + z**2 + x*y + y*z + z*x
    return n

def bfs (n,x,y,z):
    queue = deque([[x,y,z]])
    count = 0
    while queue:
        x,y,z = queue.popleft()
        for dx, dy, dz in ([1,0,0],[0,1,0],[0,0,1]):
            newx, newy, newz = x + dx, y + dy, z + dz
            ans = calculate(newx,newy,newz)
            if ans == n and [newx, newy, newz] not in queue:
                count+= 1
            
            if ans > (n + 1):
                queue = []
                break
            else:
                queue.append([newx,newy,newz])
    return count

N = int(input())
list_xyz = (1,1,1)
n = list_xyz[0]**2 + list_xyz[1]**2 + list_xyz[2]**2 + list_xyz[0]*list_xyz[1] + list_xyz[1]*list_xyz[2] + list_xyz[2]*list_xyz[0] 

for i in range(1,N+1):
  count = 0
  n = calculate(list_xyz[0], list_xyz[1], list_xyz[2])
  if n == i:
      count +=1
  count += bfs(i, list_xyz[0], list_xyz[1], list_xyz[2])
  print(count)

Fixed submission:
N = int(input())
zeros = [0 for i in range(10050)]
for x in range(1,105):
    for y in range(1,105):
        for z in range(1,105):
            n = x**2 + y**2 + z**2 + x*y + y*z + z*x
            if n < 10050:
                zeros[n]+=1

for i in range(N):
    print(zeros[i+1])