Loading...
slawi132 avatar slawi132 19 Точки

04. Fast Food

Може ли малко помощ за задача 4 от Stack and Queue от excersice-a ето и решението ми до сега имам 80 точки в judge

https://pastebin.com/SdWGFuys

https://softuni.bg/downloads/svn/csharp-fundamentals/2019-May/CSharp-Advanced-May-2019/01.%20CSharp-Advanced-Stacks-and-Queues/01.%20CSharp-Advanced-Stacks-and-Queues-Exercises.docx - Линк за задачата

Тагове:
0
C# Advanced
krasizorbov avatar krasizorbov 548 Точки
Best Answer

Здравей,

Мисля че  доста си усложнил иначе лесна задача.

Ето кода: https://pastebin.com/sLXNpGzX

Сега ще се пробвам да открия грешката.

0
krasizorbov avatar krasizorbov 548 Точки

int bigestSell = int.MinValue;

това може още в началото да кажеш че е равно на queue.Max()

защото е максималната стойност от входните данни и направо го печаташ на конзолата.

0
krasizorbov avatar krasizorbov 548 Точки

Здравей,

Ето така работи и ствоя код: https://pastebin.com/NNHJtECu

0
Joro_Paspalev avatar Joro_Paspalev 23 Точки

Здравейте,

първоначално и аз изкарах 80 точки в Judge, тъй като не бях разбрал точно условието, как да се принтират останалите необслужени поръчки (при принтирането им използвах enque.Sum(), а се иска да се принтират останалите елементите в колекцията разделени с интервал).

Ето и моя вариант на кода за тази задача:

            int amount = int.Parse(Console.ReadLine());

            var data = Console.ReadLine()
                .Split(' ', StringSplitOptions.RemoveEmptyEntries)
                .Select(int.Parse)
                .ToArray();

            Queue<int> queue = new Queue<int>(data);

            bool isComplete = true;

            if (queue.Any())
            {
                Console.WriteLine(queue.Max());
            }

            for (int i = 0; i < data.Length; i++)
            {
                int currentOrder = data[i];

                if (currentOrder <= amount)
                {
                    amount -= queue.Dequeue();
                }
                else
                {
                    Console.WriteLine($"Orders left: {string.Join(' ', queue)}");
                    isComplete = false;
                    break;
                }
            }

            if (isComplete)
            {
                Console.WriteLine("Orders complete");
            }

 

,Поздрави Жоро

0
APeev89 avatar APeev89 2 Точки

Ето и от мен нещо кратичко.
https://pastebin.com/vC7bjHR2

0
IliyanaSerafimova avatar IliyanaSerafimova 0 Точки

Много съм зле, но все пак ...

Защо използвате return в else ?

Благодаря!

0
Gerijorova avatar Gerijorova 1 Точки

защото без return в else влизаме в безкраен цикъл

0
Можем ли да използваме бисквитки?
Ние използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Можете да се съгласите с всички или част от тях.
Назад
Функционални
Използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Използваме „сесийни“ бисквитки, за да Ви идентифицираме временно. Те се пазят само по време на активната употреба на услугите ни. След излизане от приложението, затваряне на браузъра или мобилното устройство, данните се трият. Използваме бисквитки, за да предоставим опцията „Запомни Ме“, която Ви позволява да използвате нашите услуги без да предоставяте потребителско име и парола. Допълнително е възможно да използваме бисквитки за да съхраняваме различни малки настройки, като избор на езика, позиции на менюта и персонализирано съдържание. Използваме бисквитки и за измерване на маркетинговите ни усилия.
Рекламни
Използваме бисквитки, за да измерваме маркетинг ефективността ни, броене на посещения, както и за проследяването дали дадено електронно писмо е било отворено.