Loading...
IvMironov avatar IvMironov 35 Точки

Задача Roli - The Coder oт изпита Programming Fundamentals /23.10.2016г.

Здравейте,

Опитвам да реша задачата на 100%, но я докарвам до 90т. Гърми ми на 9-ти тест и не мога да разбера къде е проблема. Бихте ли ударили едно рамо при така написания код http://pastebin.com/kqq4VDXj. Благодаря!

Тагове:
1
Fundamentals Module 24/10/2016 21:15:02
e_rogleva avatar e_rogleva 38 Точки
Best Answer

Здравей,

доколкото разбрах, проблемът в задачата идва, когато се създава нов event, и по-специално от това, че и тук трябва да се следи дали присъстващите в списъка не се повтарят. Когато добавих тази проверка, кодът взе 100 точки :)

  if (!currentEvent.partisipant.Contains(inputElements[i]))
         {
             currentEvent.partisipant.Add(inputElements[i]);
         }

Поздрави! 

4
cheresharov avatar cheresharov 42 Точки

Само дето в условието никъде не се споменава за повтаряне на присъстващите!
"If she is given ID that already exists she needs to check if the eventName is the same. If it is, she adds the participants from the request to the other registered participants"

0
puffed avatar puffed 289 Точки

Здравей, 

Моят метод (долу) за добавяне на event и участници винаги изчиства повтарящите се участници в рамките на един event и пак взимам 90 точки. Ето ми целия код, ако някой може да намери проблема.

static void AddEventToList(Dictionary<int, Event> eventsList, Event currentEvent)
    {
        int eventId = currentEvent.ID;
        string eventName = currentEvent.Name;
        if (!eventsList.ContainsKey(eventId))
        {
            eventsList.Add(eventId, currentEvent);
        }
        else
        {
            if (eventsList[eventId].Name.Equals(eventName))
            {
                eventsList[eventId].Participants.AddRange(currentEvent.Participants);
                eventsList[eventId].Participants = eventsList[eventId].Participants.Distinct().ToList();
            }
            else
            {
                return;
            }
        }
    }

0
e_rogleva avatar e_rogleva 38 Точки

Пише го тук: 

Roli is the organizer of those events, so she needs to keep track of the unique participants for each event

1
24/10/2016 23:48:39
LardaX avatar LardaX 15 Точки

Айде и от мен едно питане...не мога да го добутам до повече от 80. Имам проверката за Contains при повтарящ се елемент, за всеки случай в последния foreach при принта добавих и Distinct()(което нищо не промени де)...промених си някои проверки за всеки случай, но и това не сработи и си стои на 80.

http://pastebin.com/rHJ8N46T

0
esend3 avatar esend3 8 Точки

Може ли да ми кажете как да сортирам този речник по големина на листа:

ето кода : http://pastebin.com/Sx6wxgSG

0
LardaX avatar LardaX 15 Точки

Гледам, че колегите не са се забързали да ни отговарят :D 

Аз лично те съветвам да си разделиш речника на 2 отделни - бях тръгнал като теб и си изгубих 40 мин от изпита само, за да стигна до извода, че не знам как да го сортирам...става много трудно с лист в речник в речник...

1
boykostoyanoff avatar boykostoyanoff 15 Точки

ред55: foreach (var res in eventList.OrderByDescending(x => x.Value.Values.Sum(p => p.Count)))

x.Value - ти връща Dict

x.Value.Values - ти врща листове с всичките участници, затова се сумират участниците по листове и се сортира по този сбор.

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