IEnumerable <int> Gen(int val) { List <int> leafNodes = new List <int>(); CoinCalculator2.GenerateAllCombinationsForValueKeepingTrackOfTotalCoinsAndAddingLeafNodesToList(val, 0, CoinFactory.GenerateCoinStatic(), leafNodes); return(leafNodes); }
static void Main(string[] args) { try { int num = 21; var s = new Stopwatch(); s.Start(); var oldRes = CoinCalculator2.CalculateTotalWaysToShare(num, CoinFactory.GenerateCoinStatic()); Console.WriteLine($"Correct res = {oldRes}"); Console.WriteLine($"Time - {s.ElapsedMilliseconds/1000}"); s.Stop(); s = new Stopwatch(); s.Start(); var coins = MagicPurse.GenerateCoinStatic(); var calculationGrid = new CalculationGrid(coins.AllCombinations().ToArray(), num); Console.WriteLine("myres = " + calculationGrid.CalculateTotalCoins(num)); s.Stop(); Console.WriteLine($"Seconds = {s.ElapsedMilliseconds/1000}"); } catch (Exception e) { Console.WriteLine(e); } Console.ReadLine(); }
public void CC2_Returns_141_Where_Value_Is_12d() { Assert.IsTrue(CoinCalculator2.CalculateTotalWaysToShare(24, CoinFactory.GenerateCoinStatic()) == 141); }
public void CC2_Returns_2377_Where_Value_Is_24d() { Assert.IsTrue(CoinCalculator2.CalculateTotalWaysToShare(48, CoinFactory.GenerateCoinStatic()) == 2377); }