Exemple #1
0
        public SortedSet <Rack> SortProductsOnRacks(RacksAndProductsData racksAndProductsData)
        {
            var racksBySize        = new SortedSet <Rack>(racksAndProductsData.Racks);
            var productsByQuantity = new SortedSet <Product>(racksAndProductsData.ProductsQuantity
                                                             .Select(x => new Product(x.Key, x.Value)));

            return(PlaceProductsInRacks(racksBySize, productsByQuantity));
        }
Exemple #2
0
        private static RacksAndProductsData ParseRacksWithProducts(string[] inputLines, int racksCount)
        {
            var data        = new RacksAndProductsData();
            var currentLine = 2;

            for (var i = 0; i < racksCount; i++)
            {
                var rack     = ParseRack(inputLines, currentLine++);
                var products = ParseProducts(inputLines, currentLine, rack);
                data.AddRack(rack);
                data.AddProducts(products);
                currentLine += rack.Height + 1;
            }

            return(data);
        }