#!/usr/bin/env python3

import sys





def solve(N: int, X: int, Y: int):

    distances = [0] * (N - 1)

    for i in range(0, N - 1):

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

            if j < X - 1 or Y - 1 < i:

                distance = j - i

            else:

                distance = min(j - i, abs(X - 1 - i) + abs(Y - 1 - j) + 1)

            distances[distance - 1] += 1



    for k in distances:

        print(k)



            

    return





# Generated by 1.1.6 https://github.com/kyuridenamida/atcoder-tools  (tips: You use the default template now. You can remove this line by using your custom template)

def main():

    def iterate_tokens():

        for line in sys.stdin:

            for word in line.split():

                yield word

    tokens = iterate_tokens()

    N = int(next(tokens))  # type: int

    X = int(next(tokens))  # type: int

    Y = int(next(tokens))  # type: int

    solve(N, X, Y)



if __name__ == '__main__':

    main()

#!/usr/bin/env python3

import sys





def solve(N: int, X: int, Y: int):

    distances = [0] * (N - 1)

    for i in range(0, N - 1):

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

            distance = min(j - i, abs(X - 1 - i) + abs(Y - 1 - j) + 1)

            distances[distance - 1] += 1



    for k in distances:

        print(k)

    return





# Generated by 1.1.6 https://github.com/kyuridenamida/atcoder-tools  (tips: You use the default template now. You can remove this line by using your custom template)

def main():

    def iterate_tokens():

        for line in sys.stdin:

            for word in line.split():

                yield word

    tokens = iterate_tokens()

    N = int(next(tokens))  # type: int

    X = int(next(tokens))  # type: int

    Y = int(next(tokens))  # type: int

    solve(N, X, Y)



if __name__ == '__main__':

    main()

#!/usr/bin/env python3
import sys


def solve(N: int, X: int, Y: int):
    distances = [0] * (N - 1)
    for i in range(0, N - 1):
        for j in range(i + 1, N):
            if j < X - 1 or Y - 1 < i:
                distance = j - i
            else:
                distance = min(j - i, abs(X - 1 - i) + abs(Y - 1 - j) + 1)
            distances[distance - 1] += 1
    for k in distances:
        print(k)
    return


# Generated by 1.1.6 https://github.com/kyuridenamida/atcoder-tools  (tips: You use the default template now. You can remove this line by using your custom template)
def main():
    def iterate_tokens():
        for line in sys.stdin:
            for word in line.split():
                yield word

    tokens = iterate_tokens()
    N = int(next(tokens))  # type: int
    X = int(next(tokens))  # type: int
    Y = int(next(tokens))  # type: int
    solve(N, X, Y)


if __name__ == "__main__":
    main()

#!/usr/bin/env python3
import sys


def solve(N: int, X: int, Y: int):
    distances = [0] * (N - 1)
    for i in range(0, N - 1):
        for j in range(i + 1, N):
            distance = min(j - i, abs(X - 1 - i) + abs(Y - 1 - j) + 1)
            distances[distance - 1] += 1
    for k in distances:
        print(k)
    return


# Generated by 1.1.6 https://github.com/kyuridenamida/atcoder-tools  (tips: You use the default template now. You can remove this line by using your custom template)
def main():
    def iterate_tokens():
        for line in sys.stdin:
            for word in line.split():
                yield word

    tokens = iterate_tokens()
    N = int(next(tokens))  # type: int
    X = int(next(tokens))  # type: int
    Y = int(next(tokens))  # type: int
    solve(N, X, Y)


if __name__ == "__main__":
    main()

-            if j < X - 1 or Y - 1 < i: -                distance = j - i -            else: -                distance = min(j - i, abs(X - 1 - i) + abs(Y - 1 - j) + 1) +            distance = min(j - i, abs(X - 1 - i) + abs(Y - 1 - j) + 1)