ans = [] for m in range(40): count = 0 for x in range(m+1): for y in range(x, m+1): if x*x + y*y <= m*m: for z in range(y, m+1): if x*x + y*y + z*z <= m*m: for w in range(z, m+1): if x*x + y*y + z*z + w*w <= m*m and (x + y + z + w) % 2 == 0: mul = 1 if w > 0: mul = mul * 2 if z > 0: mul = mul * 2 if y > 0: mul = mul * 2 if x > 0: mul = mul * 2 if x < y: mul = mul * 4 if y < z: mul = mul * 3 if z < w: mul = mul * 2 else: if z < w: mul = mul * 3 else: if y < z: mul = mul * 6 if z < w: mul = mul * 2 else: if z < w: mul = mul * 4 #print([x, y, z, w], mul) count = count + mul ans.append(count) print(ans)