n,x,y=map(int,input().split())

#a<b

def dis(a,b):

    return min (b-a,abs(a-x)+1+abs(b-y))



# for k in range(1,n):

#   count=0

#   #i<j

#   for i in range(1,n):

#     for j in range(i+1,n+1):

#       if dis(i,j)==k:

#         count+=1

#   print(count)

ans=[0]*(n-1)

#i<j

for i in range(1,n):

  for j in range(i+1,n+1):

    ans[dis(i,j)-1]+=1

print(*ans,sep="\n")

n,x,y=list(map(int,input().split()))

#a<b

def dis(a,b):

    return min (b-a,abs(a-x)+1+abs(b-y))



# for k in range(1,n):

#   count=0

#   #i<j

#   for i in range(1,n):

#     for j in range(i+1,n+1):

#       if dis(i,j)==k:

#         count+=1

#   print(count)

ans=[0]*(n-1)

#i<j

for i in range(1,n):

  for j in range(i+1,n+1):

    ans[dis(i,j)-1]+=1

#print(*ans,sep="\n")

print(("\n".join(map(str,ans))))
n, x, y = map(int, input().split())
# a<b
def dis(a, b):
    return min(b - a, abs(a - x) + 1 + abs(b - y))


# for k in range(1,n):
#   count=0
#   #i<j
#   for i in range(1,n):
#     for j in range(i+1,n+1):
#       if dis(i,j)==k:
#         count+=1
#   print(count)
ans = [0] * (n - 1)
# i<j
for i in range(1, n):
    for j in range(i + 1, n + 1):
        ans[dis(i, j) - 1] += 1
print(*ans, sep="\n")

n, x, y = list(map(int, input().split()))
# a<b
def dis(a, b):
    return min(b - a, abs(a - x) + 1 + abs(b - y))


# for k in range(1,n):
#   count=0
#   #i<j
#   for i in range(1,n):
#     for j in range(i+1,n+1):
#       if dis(i,j)==k:
#         count+=1
#   print(count)
ans = [0] * (n - 1)
# i<j
for i in range(1, n):
    for j in range(i + 1, n + 1):
        ans[dis(i, j) - 1] += 1
# print(*ans,sep="\n")
print(("\n".join(map(str, ans))))

-n, x, y = map(int, input().split()) +n, x, y = list(map(int, input().split())) -print(*ans, sep="\n") +# print(*ans,sep="\n") +print(("\n".join(map(str, ans))))