using System;

namespace ConsoleApp20
{
    class Program
    {
        static int ProveriLevo(int x, int y, int[,] matrica)
        {
            for (int i = y - 1; i >= 0; i--)
            {
                if (matrica[x, i] != 0) return i;
            }

            return -1;
        }

        static int ProveriDesno(int x, int y, int[,] matrica, int n)
        {
            for (int i = y + 1; i < n; i++)
            {
                if (matrica[x, i] != 0) return i;
            }

            return -1;
        }

        static void Main(string[] args)
        {
            int h = 1;
            int n = 3;

            int[,] matrica = new int[h, n];
            matrica[0, 0] = 1;
            matrica[0, 1] = 0;
            matrica[0, 2] = 1;

            for (int j = 1; j < n; j++)
            {
                if (matrica[0,j] == 0)
                {
                    int levo = ProveriLevo(0, j, matrica);
                    if (levo != -1)
                        matrica[0, levo] += 1;
                    else matrica[0, ProveriDesno(0, j, matrica, n)] += 1;
                }
            }

            for (int i = 1; i < h - 1; i++)
            {
                for (int j = 0; j < n; j++)
                {
                    if(matrica[i,j]==0)
                    {
                        int desno = ProveriDesno(i, j, matrica, n);
                        int levo = ProveriLevo(i, j, matrica);

                        if (levo == -1)
                            matrica[i, desno] += matrica[i - 1, j];
                        else
                        if (desno == -1)
                            matrica[i, levo] += matrica[i - 1, j];
                        else 
                        if(matrica[i-1,j]%2==0)
                        {
                            matrica[i, levo] += matrica[i - 1, j] / 2;
                            matrica[i, desno] += matrica[i - 1, j] / 2;
                        }
                        else 
                        if((i+1)%2==0)
                        {
                            matrica[i, levo] += (matrica[i - 1, j] - 1) / 2 + 1;
                            matrica[i, desno] += (matrica[i - 1, j] - 1) / 2;
                        }
                        else {
                            matrica[i, desno] += (matrica[i - 1, j] - 1) / 2 + 1;
                            matrica[i, levo] += (matrica[i - 1, j] - 1) / 2;
                        }
                    }
                }
            }

            for (int j = 0; j < n - 1; j++) 
            {
                Console.Write(matrica[h - 1, j] + " ");
            }
            Console.Write(matrica[h - 1, n - 1]);
        }
    }
}