Loading...
Vankata83 avatar Vankata83 72 Точки

STL Associative Containers Miners

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

Имам проблем с тази задача - хвърля ми time limit грешка на последните два теста.

Задачата съм я решил с един мап и един вектор, който да пази insertion order.

Първоначално си мислех да я "излъжа" като по някакъв начин вкарвам пр. буква към ключа и по този начин да пазя този ред.

Естествено не сработи, понеже когато се подаде същия ключ като вход няма как да го разпозная че го има вече.

Имаше една дискусия тук за ресурсите и времето, което отнема да се изпълни кода - повече MB по - малко време и обратно.

Казвам общо освен ако нещо тотално не съм разбрал.

Някой може ли да даде някакви насоки за time limit- а или вече главата ми е прекалено забъгнала и въобще не мисля в правилната посока.

Благодаря.

PS На теста тотално се изложих, но пък след това, като се поразмислих над отговорите, ми светнаха, някои неща.

Така че - има смисъл давайте смело :)

Тагове:
0
C++ Fundamentals
spasimira25 avatar spasimira25 25 Точки

Галине, за пореден път, благодаря. Направо ме разби. Преди 2-3 дни за първи път видях въвеждане вътре в условието  на цикъла. (Не знам дали така се нарича де). Не знаех, че е 10-20 пъти по-бързо. Пробвах с emplace_back, със short, с дабъл и с какво ли още не. Само така тръгна.

Поздрави, Тошо.

 

1
19/10/2019 20:13:15
galin_kostadinov avatar galin_kostadinov 166 Точки

Привет, Тошко :)

Аз го ползвам по този начин, като така ако има грешен вход(не е въведено това, което се изисква string и int) ми връша false.

Другото предимство, е че четеш само на едно място, не дублираш на няколко места - преди цъкала и в края на него, като така си гарантираш, че няма да пропуснеш едното четене.

Поздрави!

1
SylviaNikolova avatar SylviaNikolova 20 Точки

И аз много благодаря за hint-а! 

0
m.nikolov97 avatar m.nikolov97 25 Точки

Здравей! Аз също много ти благодаря и при мен сработи по този начин.. Просто се чудя, ако ми се падне подобна задача на изпит или където и да е, от къде да се сетя за подобна оптимизация на кода ? smiley Винаги ли слагаш четенето и проверките в while цикъла?

0
22/10/2019 18:17:53
galin_kostadinov avatar galin_kostadinov 166 Точки

Привет!

m.nikolov97

Като цяло слагам някакво условие за край на цикъла, ако е ясно какво е. Всичко зависи от задачата.

Ако имаш много неща за четене не ОК да ги слагаш всичките в while(), но както виждаш понякога е полезно.

Поздрави!

 

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