Esempio n. 1
0
        public void Cost()
        {
            var n1 = new Revise5().Cost(new[] { 100, 250, 1000 });
            var n2 = new Revise5().Cost(new[] { 100, 250, 1000, 1000 });

            Assert.AreEqual(1700, n1);
            Assert.AreEqual(4400, n2);
        }
Esempio n. 2
0
        public void WhenAllBulbsOn()
        {
            var n1 = new Revise5().WhenAllBulbsShine(new[] { 2, 1, 3, 5, 4 });
            var n2 = new Revise5().WhenAllBulbsShine(new[] { 2, 3, 4, 1, 5 });
            var n3 = new Revise5().WhenAllBulbsShine(new[] { 1, 3, 4, 2, 5 });
            var n4 = new Revise5().WhenAllBulbsShine(new[] { 2, 1 });
            var n5 = new Revise5().WhenAllBulbsShine(new[] { 1, 2 });
            var n6 = new Revise5().WhenAllBulbsShine(new[] { 1 });

            Assert.AreEqual(3, n1);
            Assert.AreEqual(2, n2);
            Assert.AreEqual(3, n3);
            Assert.AreEqual(1, n4);
            Assert.AreEqual(2, n5);
            Assert.AreEqual(1, n6);
        }
Esempio n. 3
0
        public void NumSquareRoots()
        {
            var n1      = new Revise5().NumSquareRoots(10, 20);
            var n2      = new Revise5().NumSquareRoots(6000, 7000);
            var n3      = new Revise5().NumSquareRoots(10, 11);
            var n4      = new Revise5().NumSquareRoots(16, 16);
            var n5      = new Revise5().NumSquareRoots(4, 4);
            var invalid = new Revise5().NumSquareRoots(16, 4);
            var big     = new Revise5().NumSquareRoots(2, 10000);

            Assert.AreEqual(2, n1);
            Assert.AreEqual(3, n2);
            Assert.AreEqual(0, n3);
            Assert.AreEqual(2, n4);
            Assert.AreEqual(1, n5);
            Assert.AreEqual(0, invalid);
            Assert.IsTrue(big >= 3);
        }