Пример #1
0
        public void GetTreeHeightTest()
        {
            //int n = Convert.ToInt32(Console.ReadLine());

            //var input = Console.ReadLine().Split(' ');

            //List<int> intList = new List<int>();
            //intList.AddRange(input.Select(s => int.Parse(s)));


            for (int i = 1; i <= 24; i++)
            {
                string s1 = @".\tests\" + String.Format("{0:00}", i);
                string s2 = @".\tests\" + String.Format("{0:00}", i) + ".a";

                string t1 = System.IO.File.ReadAllText(s1);
                string t2 = System.IO.File.ReadAllText(s2);

                var      t1SplitN = t1.Split('\n');       // For Windows with /r/n
                var      t1SplitR = t1SplitN[1].Split('\r');
                string[] input    = t1SplitR[0].Split(' ');

                //var t1Split = t1.Split('\n');           // For Unix with /n
                //string[] input = t1Split[1].Split(' ');
                List <int> intList = new List <int>();
                intList.AddRange(input.Select(s => int.Parse(s)));
                string expected = t2;
                using (var consoleOutput = new ConsoleOutput())
                {
                    TreeHeight.GetTreeHeight(intList);
                    string error = "Case" + String.Format("{0:00}", i);
                    Assert.AreEqual(expected, consoleOutput.GetOuput(), error);
                }
            }
        }
Пример #2
0
 public Tree(Vector3 pos, TreeHeight height)
 {
     Position        = pos;
     RemainingWood   = height == TreeHeight.Big ? 20 + API.shared.RandomNumber(-5, 5) : height == TreeHeight.Medium ? 10 + API.shared.RandomNumber(-3, 3) : 5 + API.shared.RandomNumber(-1, 1);
     StrikesRequired = height == TreeHeight.Big ? 8 + API.shared.RandomNumber(-2, 2) : height == TreeHeight.Medium ? 6 + API.shared.RandomNumber(-1, 1) : 3 + API.shared.RandomNumber(-1, 1);
     CurrentStrikes  = 0;
     SpawnedLogs     = new List <Object>();
 }
Пример #3
0
    public static void Main(string[] args)
    {
        TreeNode leaf1 = new TreeNode(null, null);
        TreeNode leaf2 = new TreeNode(null, null);
        TreeNode node  = new TreeNode(leaf1, null);
        TreeNode root  = new TreeNode(node, leaf2);

        Console.WriteLine(TreeHeight.CalculateHeight(root));

        Console.Read();
    }
Пример #4
0
        public void BinaryTreeHeightTest()
        {
            var node5  = new BinaryNode(5, null, null);
            var node4  = new BinaryNode(4, node5, null);
            var node3  = new BinaryNode(3, null, null);
            var node2  = new BinaryNode(2, null, null);
            var node1  = new BinaryNode(1, node3, node4);
            var root   = new BinaryNode(0, node1, node2);
            var height = TreeHeight.Height(root);

            Assert.Equal(3, height);
        }
Пример #5
0
        public void TreeHeightTest()
        {
            var emptyChildre = System.Array.Empty <Node>();
            var node2        = new Node(2, emptyChildre);
            var node9        = new Node(9, emptyChildre);
            var node1        = new Node(1, new [] { node2, node9 });
            var nodeN6       = new Node(-6, emptyChildre);
            var node4        = new Node(4, new[] { node1, nodeN6 });
            var node8        = new Node(8, emptyChildre);
            var node0        = new Node(0, emptyChildre);
            var node7        = new Node(7, new [] { node8 });
            var nodeN4       = new Node(-4, emptyChildre);
            var node3        = new Node(3, new [] { node0, node7, nodeN4 });
            var root         = new Node(5, new [] { node4, node3 });
            var height       = TreeHeight.Height(root);

            Assert.Equal(3, height);
        }
Пример #6
0
    public static void Main(string[] args)
    {
        TreeNode leaf1 = new TreeNode(null, null);
        TreeNode leaf2 = new TreeNode(null, null);
        TreeNode leaf3 = new TreeNode(null, null);
        TreeNode node2 = new TreeNode(leaf1, null);
        TreeNode node3 = new TreeNode(leaf1, null);
        TreeNode node  = new TreeNode(node2, null);
        TreeNode root  = new TreeNode(node, leaf2);



        Console.WriteLine(TreeHeight.CalculateHeight(root));
        Console.ReadLine();

        //var d = new Dispatcher();

        //d.AcquireWorker(1).PerformTask("Task11");
        //d.AcquireWorker(2).PerformTask("Task21");

        //Console.WriteLine(string.Join(", ", d.AcquireWorker(2).Tasks));

        //d.ReleaseWorker(2);

        //d.AcquireWorker(1).PerformTask("Task12");


        //Console.WriteLine(string.Join(", ", d.AcquireWorker(1).Tasks));
        //d.ReleaseWorker(1);
        //Console.WriteLine(d.Workers);
        //Console.ReadLine();



        //public static void Main(string[] args)
        //{
        //Grasshopper g = new Grasshopper(5, 2);
        //Console.WriteLine(g.WhereAmI());

        //g.EatAndHopRight();
        //Console.WriteLine(g.WhereAmI());

        //g.EatAndHopLeft();
        //Console.WriteLine(g.WhereAmI());


        //Grasshopper g = new Grasshopper(10, 6);
        //Console.WriteLine(g.WhereAmI());

        //g.EatAndHopRight();
        //Console.WriteLine(g.WhereAmI());

        //g.EatAndHopRight();
        //Console.WriteLine(g.WhereAmI());

        //g.EatAndHopLeft();
        //Console.WriteLine(g.WhereAmI());

        //g.EatAndHopRight();
        //Console.WriteLine(g.WhereAmI());
        //    }
        //}
    }
Пример #7
0
        public void TestDataSet(DataSource input, string output)
        {
            var assignment = new TreeHeight();

            Assert.Equal(output, assignment.Execute(input));
        }
Пример #8
0
    static void Main(string[] args)
    {
        var    tree = new BinaryTree();
        string line;

        System.IO.StreamReader file = new System.IO.StreamReader("in.txt");
        while ((line = file.ReadLine()) != null)
        {
            tree.Insert((long)Int32.Parse(line));
        }

        int Height             = TreeHeight.Height(tree);
        List <BinaryTree> Tree = new List <BinaryTree> {
        };

        BinaryTreeTask.TreeSumm(tree, Tree, Height);
        Dictionary <BinaryTree, int[]> End = new Dictionary <BinaryTree, int[]> {
        };

        foreach (var item in Tree)
        {
            BinaryTreeTask.SadMan(item, End);
        }
        foreach (var item in End)
        {
            if (item.Value[0] <= item.Value[1])
            {
                Tree.Remove(item.Key);
            }
        }
        End.Clear();
        List <long> End_2 = new List <long> {
        };

        foreach (var item in Tree)
        {
            End_2.Add((long)item.Data);
        }
        End_2.Sort();
        List <long> Items = new List <long> {
        };

        if (End_2.Count() % 2 == 0)
        {
            BinaryTreeSum.TreeSumm(tree, Items);
        }
        else
        {
            tree.Delete(tree.Find(End_2[End_2.Count() / 2]));
            BinaryTreeSum.TreeSumm(tree, Items);
        }
        StreamWriter sw = new StreamWriter("out.txt");

        foreach (var item in Items)
        {
            sw.WriteLine(item);
        }

        file.Close();
        sw.Close();
        Console.ReadLine();
    }
        public void TreeHeightTest()
        {
            TreeHeight treeHeight = new TreeHeight("TD2");

            TestTools.RunLocalTest("A8", treeHeight.Process, "TD2");
        }