Problem: p02608
Buggy submission (PyPy3 (7.3.0), verdict: Wrong Answer):
from itertools import combinations
N=int(input())
ans=[0]*(10**7)
for x in range(1,N+1):
    if x**2>N:
        break
    for y in range(x,N+1):
        if x**2+y**2>N:
            break
        for z in range(y,N+1):
            if x**2+y**2+z**2>N:
                break
            else:
                kari=[x,y,z]
                
                if x**2+y**2+z**2+x*y+y*z+z*x<=len(ans):
                    ans[x**2+y**2+z**2+x*y+y*z+z*x-1]=len(list(combinations(kari,2)))
if N>=6:
    ans[5]=1
for i in range(N):
    print(ans[i])

Failing test case input:
743

Expected output:
0
0
0
0
0
1
0
0
0
0
3
0
0
0
0
0
3
3
0
0
0
0
0
1
6
0
3
0
0
0
0
0
3
3
6
0
0
3
0
0
0
0
3
3
6
0
6
0
0
0
3
0
0
1
6
0
6
6
0
0
6
0
0
0
0
3
3
3
6
0
6
3
6
0
0
0
6
0
0
0
3
3
9
0
6
3
6
0
3
6
0
0
0
0
6
1
6
0
6
6
0
3
12
0
6
0
0
3
6
0
0
0
3
3
12
0
6
3
6
0
3
6
9
0
6
0
0
0
3
6
3
3
6
0
6
3
12
0
3
6
6
0
6
0
6
3
6
0
0
1
6
3
12
6
0
0
12
0
6
0
6
6
12
0
0
6
0
0
6
0
12
3
6
0
6
3
9
6
3
6
6
0
6
0
6
0
15
6
0
0
6
0
3
3
12
0
12
6
6
0
3
6
6
3
12
0
6
0
9
6
0
0
6
3
12
1
6
6
6
6
0
0
18
0
12
0
3
6
12
0
0
6
3
6
12
0
12
0
0
0
9
3
9
6
12
3
12
0
3
6
6
0
12
0
12
0
9
9
0
0
6
3
6
3
12
6
9
3
6
0
12
3
6
3
9
6
12
6
6
0
6
0
9
6
6
0
12
3
6
0
9
6
6
1
6
0
21
12
6
0
12
0
12
0
0
6
15
6
0
6
12
0
12
0
12
0
0
0
12
0
12
12
3
3
18
3
6
3
6
6
9
9
18
0
6
0
12
0
9
6
0
3
12
3
6
6
12
6
6
0
0
0
15
3
18
3
18
3
12
6
3
6
9
0
12
0
12
0
18
12
0
0
12
3
6
0
6
6
9
6
0
0
18
1
18
3
12
6
6
6
12
0
15
6
12
6
18
0
0
6
0
9
12
0
18
0
6
3
12
0
12
12
0
0
12
0
3
6
12
6
18
9
18
0
9
6
18
0
6
0
6
3
27
6
6
6
6
3
6
0
12
6
9
0
6
0
18
0
9
9
15
3
12
6
6
3
9
6
12
12
18
0
18
0
6
6
21
6
0
0
6
3
15
6
12
6
18
0
0
0
12
6
6
3
6
4
18
6
12
6
3
9
30
0
18
0
6
6
12
6
6
9
12
0
18
6
18
0
6
0
12
0
6
12
6
3
18
0
6
6
6
6
15
3
24
0
6
3
18
0
12
6
12
6
24
0
15
18
9
6
0
0
18
3
6
0
15
12
12
6
6
0
18
0
6
3
12
0
12
6
6
9
9
6
24
3
24
0
9
12
6
6
12
0
12
0
21
9
15
6
12
3
18
3
12
6
12
6
0
0
12
0
12
6
24
0
6
12
6
1
9
6
12
6
24
0
18
3
12
6
6
12
24
0
12
6
15
6
18
0
18
0
0
0
18
9
21
12
0
6
18
0
9
6
6
6
12
0
12
0
9
9
27
6
6
3
18
6
21
6
6
12
12
0
12
0
24
12
0
0
24
3
24
6
12
12
18
0
0
0
12
0
18
3
15
6
12
9
6
0
15
6
9
12
24
0
12
3
6
6
21
6
18
3
18
0
21
12
15
6
6
0
12
3
12
9
18
9
12
6
6
6
24
0
18
3
24
0
6
6
0
6
9
6
6
4
30
0
18
12
9
6
24
0
18
0
9
12
21
6
6
12
12


Actual output:
0
0
0
0
0
1
0
0
0
0
3
0
0
0
0
0
3
3
0
0
0
0
0
3
3
0
3
0
0
0
0
0
3
3
3
0
0
3
0
0
0
0
3
3
3
0
3
0
0
0
3
0
0
3
3
0
3
3
0
0
3
0
0
0
0
3
3
3
3
0
3
3
3
0
0
0
3
0
0
0
3
3
3
0
3
3
3
0
3
3
0
0
0
0
3
3
3
0
3
3
0
3
3
0
3
0
0
3
3
0
0
0
3
3
3
0
3
3
3
0
3
3
3
0
3
0
0
0
3
3
3
3
3
0
3
3
3
0
3
3
3
0
3
0
3
3
3
0
0
3
3
3
3
3
0
0
3
0
3
0
3
3
3
0
0
3
0
0
3
0
3
3
3
0
3
3
3
3
3
3
3
0
3
0
3
0
3
3
0
0
3
0
3
3
3
0
3
3
3
0
3
3
3
3
3
0
3
0
3
3
0
0
3
3
3
3
3
3
3
3
0
0
3
0
3
0
3
3
3
0
0
3
3
3
3
0
3
0
0
0
3
3
3
3
3
3
3
0
3
3
3
0
3
0
3
0
3
3
0
0
3
3
3
3
3
3
3
3
3
0
3
3
3
3
3
3
3
3
3
0
3
0
3
3
3
0
3
3
3
0
3
3
3
3
3
0
3
3
3
0
3
0
3
0
0
3
3
3
0
3
3
0
3
0
3
0
0
0
3
0
3
3
3
3
3
3
3
3
3
3
3
3
3
0
3
0
3
0
3
3
0
3
3
3
3
3
3
3
3
0
0
0
3
3
3
3
3
3
3
3
3
3
3
0
3
0
3
0
3
3
0
0
3
3
3
0
3
3
3
3
0
0
3
3
3
3
3
3
3
3
3
0
3
3
3
3
3
0
0
3
0
3
3
0
3
0
3
3
3
0
3
3
0
0
3
0
3
3
3
3
3
3
3
0
3
3
3
0
3
0
3
3
3
3
3
3
3
3
3
0
3
3
3
0
3
0
3
0
3
3
3
3
3
3
3
3
3
3
3
3
3
0
3
0
3
3
3
3
0
0
3
3
3
3
3
3
3
0
0
0
3
3
3
3
3
3
3
3
3
3
3
3
3
0
3
0
3
3
3
3
3
3
3
0
3
3
3
0
3
0
3
0
3
3
3
3
3
0
3
3
3
3
3
3
3
0
3
3
3
0
3
3
3
3
3
0
3
3
3
3
0
0
3
3
3
0
3
3
3
3
3
0
3
0
3
3
3
0
3
3
3
3
3
3
3
3
3
0
3
3
3
3
3
0
3
0
3
3
3
3
3
3
3
3
3
3
3
3
0
0
3
0
3
3
3
0
3
3
3
3
3
3
3
3
3
0
3
3
3
3
3
3
3
0
3
3
3
3
3
0
3
0
0
0
3
3
3
3
0
3
3
0
3
3
3
3
3
0
3
0
3
3
3
3
3
3
3
3
3
3
3
3
3
0
3
0
3
3
0
0
3
3
3
3
3
3
3
0
0
0
3
0
3
3
3
3
3
3
3
0
3
3
3
3
3
0
3
3
3
3
3
3
3
3
3
0
3
3
3
3
3
0
3
3
3
3
3
3
3
3
3
3
3
0
3
3
3
0
3
3
0
3
3
3
3
3
3
0
3
3
3
3
3
0
3
0
3
3
3
3
3
3
3


Fixed submission (verdict: Accepted):
from itertools import permutations
N=int(input())
ans=[0]*(10**6)
for x in range(1,N+1):
    if x**2>N:
        break
    for y in range(1,N+1):
        if x**2+y**2>N:
            break
        for z in range(1,N+1):
            if x**2+y**2+z**2>N:
                break
            else:
                kari=[x,y,z]
                
                if x**2+y**2+z**2+x*y+y*z+z*x<=10**5:
                    ans[x**2+y**2+z**2+x*y+y*z+z*x-1]+=1
                    
for i in range(N):
    print(ans[i])