public IActionResult AlphaBetaA(string stringArray, int depth, Player player, int PlayerScore, int EqualScore, int CompScore)
        {
            char[][] array = StringToChar2D(stringArray);
            Node     s     = new Node();

            s.niz = CopyRow(array);
            s.h   = Heuristic(s.niz);
            List <object> result = alphabet(s, depth, int.MinValue, int.MaxValue, player);

            s   = (Node)result[1];
            s.h = Heuristic(s.niz);
            if (IsLeaf(s))
            {
                player = (player == (Player)0 ? (Player)1 : (Player)0);
                if (s.h == 1000 && player == (Player)1)
                {
                    PlayerScore++;
                }
                else if (s.h == -1000 && player == (Player)1)
                {
                    CompScore++;
                }
                else if (s.h == 1000 && player == (Player)0)
                {
                    CompScore++;
                }
                else if (s.h == -1000 && player == (Player)0)
                {
                    PlayerScore++;
                }
                else
                {
                    EqualScore++;
                }
            }
            AlphaBetaVM VM = new AlphaBetaVM()
            {
                array       = Char2Dto1D(CopyRow(s.niz)),
                player      = player,
                heuristic   = s.h,
                isLeaf      = (IsLeaf(s) ? "true": "false"),
                depth       = depth,
                playerScore = PlayerScore,
                compScore   = CompScore,
                equalScore  = EqualScore,
                depths      = new List <SelectListItem>()
                {
                    new SelectListItem {
                        Text = "Too Easy (1)", Value = "1"
                    },
                    new SelectListItem {
                        Text = "Easy (2)", Value = "2"
                    },
                    new SelectListItem {
                        Text = "Simple (3)", Value = "3"
                    },
                    new SelectListItem {
                        Text = "Medium (4)", Value = "4"
                    },
                    new SelectListItem {
                        Text = "Harder (5)", Value = "5"
                    },
                    new SelectListItem {
                        Text = "Hard (6)", Value = "6"
                    },
                    new SelectListItem {
                        Text = "Very difficult (7)", Value = "7"
                    },
                    new SelectListItem {
                        Text = "Extreme (8)", Value = "8"
                    },
                    new SelectListItem {
                        Text = "Impossible (9)", Value = "8"
                    }
                }
            };

            return(PartialView("AlphaBetaA", VM));
        }
        public IActionResult Index(int Depth, Player player = (Player)0, int PlayerScore = 0, int EqualScore = 0, int CompScore = 0)
        {
            //char[] array;
            //if (HumanOnMove)
            //{
            char [] array = new char[9] {
                '0', '0', '0', '0', '0', '0', '0', '0', '0'
            };
            Node s = new Node();

            if (player == (Player)1)
            {
                char[][] Array = new char[3][];
                Array[0] = new char[3] {
                    '0', '0', '0'
                };
                Array[1] = new char[3] {
                    '0', '0', '0'
                };
                Array[2] = new char[3] {
                    '0', '0', '0'
                };
                s.niz = CopyRow(Array);
                s.h   = Heuristic(s.niz);
                List <object> result = alphabet(s, Depth, int.MinValue, int.MaxValue, (Player)1);
                s   = (Node)result[1];
                s.h = Heuristic(s.niz);
                int brojac = 0;
                for (int i = 0; i < 3; i++)
                {
                    for (int j = 0; j < 3; j++)
                    {
                        array[brojac++] = s.niz[i][j];
                    }
                }
            }

            AlphaBetaVM VM = new AlphaBetaVM()
            {
                array       = array,
                depth       = Depth,
                player      = player,
                isLeaf      = "false",
                playerScore = PlayerScore,
                compScore   = CompScore,
                equalScore  = EqualScore,
                depths      = new List <SelectListItem>()
                {
                    new SelectListItem {
                        Text = "Too Easy (1)", Value = "1"
                    },
                    new SelectListItem {
                        Text = "Easy (2)", Value = "2"
                    },
                    new SelectListItem {
                        Text = "Simple (3)", Value = "3"
                    },
                    new SelectListItem {
                        Text = "Medium (4)", Value = "4"
                    },
                    new SelectListItem {
                        Text = "Harder (5)", Value = "5"
                    },
                    new SelectListItem {
                        Text = "Hard (6)", Value = "6"
                    },
                    new SelectListItem {
                        Text = "Very difficult (7)", Value = "7"
                    },
                    new SelectListItem {
                        Text = "Extreme (8)", Value = "8"
                    },
                    new SelectListItem {
                        Text = "Impossible (9)", Value = "8"
                    }
                }
            };

            return(View(VM));
        }