Loading...
NiKoev avatar NiKoev 1 Точки

04. Snowwhite, Retake Exam - 05 January 2018

Здравейте колеги, 

Опитахте се реша 4-та задача Snowwhite от Programming Fundamentals Retake Exam - 05 January изпита. Искам да я реша с Dictionary, тъй като не сханах много класовете. Докарах я до 60/100. Мисля, че съм изпълнил всички условия и сортировката би трябвало да работи. Не мога да намеря проблема. Благодаря предварително! Ето кода: https://pastebin.com/fqr45mwk

0
Fundamentals Module
NikolayNeykov92 avatar NikolayNeykov92 617 Точки

Здравей,

При твоя подход проблема е че ключ на речника са цветовете на шапките на джуджетата и при сортировка

сортираш цветовете на шапките, а не самите джуджета.

За да се получи с вложени речници, трябва първо да сортираш речника по броя на шапките, да го презапишеш в

Dictionary<string, int> и за ключ трябва да слагаш ключа на първия речник + ключа на вложения речник (така както ще се принтират) и после да сортираш презаписания речник по physics или иначе казано трябва да сортираш наобратно спрямо условието на задачата.

Ето как изглежда сортировката:

 

            Dictionary<string, int> sortedDwarfs = new Dictionary<string, int>();
            foreach (var hatColor in dwarfs.OrderByDescending(x=>x.Value.Count()))
            {
                foreach (var dwarf in hatColor.Value)
                {
                    sortedDwarfs.Add($"({hatColor.Key}) {dwarf.Key} <-> ", dwarf.Value);
                }
            }
            foreach (var dwarf in sortedDwarfs.OrderByDescending(x=>x.Value))
            {
                Console.WriteLine($"{dwarf.Key}{dwarf.Value}");
            }

2
28/06/2018 13:07:35
NiKoev avatar NiKoev 1 Точки

Благодаря Много!

0
Elena123456 avatar Elena123456 235 Точки

И аз благодаря много за споделеното решение!

Поздрави!

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