public void ShouldCountEquiLeaders(int[] A, int expected)
        {
            EquiLeader counter = new EquiLeader();
            int        actual  = counter.Count(A);

            Assert.AreEqual(expected, actual);
        }
示例#2
0
        public void GetNumber_TwoEqualItems_1()
        {
            var values     = new[] { 4, 4 };
            var equiLeader = new EquiLeader(values);

            var number = equiLeader.GetNumberOfEquiLeaders();

            number.Should().Be(1);
        }
示例#3
0
        public void GetNumber_Sample_2()
        {
            var values     = new[] { 4, 3, 4, 4, 4, 2 };
            var equiLeader = new EquiLeader(values);

            var number = equiLeader.GetNumberOfEquiLeaders();

            number.Should().Be(2);
        }
示例#4
0
        public void GetNumber_NaturalSequence_0()
        {
            var size       = 100_000;
            var values     = Enumerable.Range(1, size).ToArray();
            var equiLeader = new EquiLeader(values);

            var number = equiLeader.GetNumberOfEquiLeaders();

            number.Should().Be(0);
        }
示例#5
0
        public void GetNumber_ManyEqualItems_NumberOfItemsMinusOne()
        {
            var size       = 100_000;
            var values     = Enumerable.Repeat(1_000_000_000, size).ToArray();
            var equiLeader = new EquiLeader(values);

            var number = equiLeader.GetNumberOfEquiLeaders();

            number.Should().Be(size - 1);
        }
示例#6
0
        public void EquiLeaderSolutionTest()
        {
            var equiLeader = new EquiLeader();

            int[] array = { 4, 3, 4, 4, 4, 2 };

            int result = equiLeader.Solve(array);

            Assert.AreEqual(2, result);
        }
 public void Initialize()
 {
     _equiLeader = new EquiLeader();
 }