Професионална програма
Loading...
+ Нов въпрос
georgi.stef.georgiev avatar georgi.stef.georgiev 921 Точки

Решения, тестове на изпита на 21 май 2017 - и отваряне на системата за практика

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

В shared папката в Dropbox съм ви публикувал целите задачи от днескашния изпит - условия, решения, тестове, скелети:

https://www.dropbox.com/sh/xxvi4n1twv1vqy0/AADKEy7pG7iPXEa6lKMBr8QOa?dl=0

Също така състезанието е отворено за практика ако искате да пререшите задачите, или да се подготвите допълнително за следващия изпит на 28-ми.

В следващите дни ще се постарая да ви публикувам информация какви са ви резултатите за домашни и бонус точки, за да могат тези от вас, които се явиха днес, да преценят дали да се явят на поправка.

Поздрави,

Жоро

Тагове:
3
C++ Programming
tsvetanpopharitov avatar tsvetanpopharitov 1 Точки

Въпрос:  Във втората задача какво са rangeFirst и rangeLength. Ако можеше по някое обяснение към решенията щеше да е хубаво. Просто не само лекциите за подготовка бяха малко ами и като си онлайн-ер малко ти е всичко още по-трудно за практикуване и схващане.

0
p.yordanov avatar p.yordanov 51 Точки

rangeFirst ти е първото число в масива, а rangeLength - дължината му.

Със rangeFirst може да смяташ offset-а на масива.

0
georgi.stef.georgiev avatar georgi.stef.georgiev 921 Точки

rangeFirst: най-малкото число, което е било добавено в Range-а,

rangeLength: 1 + разстоянието (абсолютната стойност на разликата) между rangeFirst и най-голямото число добавено в Range-а

Но това важи за авторското решение само. Като цяло задачата е направена така, че може тези стойности да ги направите да означават каквото си искате. Предназначени са за това, което съм описал горе, но в програмирането, особено в реализирането на някакви структури данни, вътрешната имплементация на нещо може да бъде направена по много различни начини. Единственото, което е задължително, е даденият код (ConstValueIterator-а и main() функцията) правилно да работи в комбинация с вашата имплементация и да решава задачата описана в условието (от множество въведени масиви от числа, да се изведе този с най-много срещания на определено число, сортиран във възходящ ред).

Case in point, предвид входните данни на тази задача и начина, по който ConstValueIterator-а работи, в едно работещо решение е вариант rangeFirst може винаги да бъде -100, rangeLength винаги да бъде 201 ("Numbers in the input data are from -100 to 100") и така написана структурата най-вероятно пак би работила вярно (и няма да се налага да се справяте със ситуации, в които range-а трябва да се "разшири" - това btw изяде главите на много хора на изпита).

Като цяло идеята на тази задача е да прегледате дадения код и да напишете такава имплементация, която да работи с дадения код. Тоест част от задачата е вие да прецените кои членове как да имплементирате. Разбира се, на изпита времето е ограничено, затова в началото на изпита давам кратко обяснение на идеята на всяка задача, а по времето на целия изпит съм на място за въпроси (това беше така на този изпит и ще бъде така на следващия, на 28 май).

Иначе съм съгласен, че да има обяснения към решенията щеше да е добре. Дори бих казал, че всички Judge Assignments, както и всичко решения на изпити, трябва да си имат по видео за всяка задача, което обяснява решението и начинът, по който се стига до него (т.е. нещо като видеото от лекцията за подготовката за изпит). За съжаление просто не остава време за такива неща. Правенето на един изпит/лекция както трябва си отнема около седмица време, когато го правиш вечерите след работа - и съответно не остава време за допълнителни материали.

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

Поздрави,

Жоро

1
22/05/2017 12:08:28
Dimitar_Petkov_Petkov avatar Dimitar_Petkov_Petkov 169 Точки

Супер задачки Жоро. Искаш пак да ни видиш и на поправката :) Обещай че ще бъдат по-гадни задачите !

0
p.yordanov avatar p.yordanov 51 Точки

Привет Жоро,

Имаш ли някаква информация дали и кога ще можем да си погледнем точките, за да знаем дали да идваме на поправка :)

0
georgi.stef.georgiev avatar georgi.stef.georgiev 921 Точки

Здравей,

Надявам се до ден-два да можем да ги изкараме, ще ви пиша във форума веднага като имаме нещо готово.

Поздрави,

Жоро

2
p.yordanov avatar p.yordanov 51 Точки

Резултатите от първия изпит излезнаха smiley

1
georgi.stef.georgiev avatar georgi.stef.georgiev 921 Точки

Това ще прозвучи смешно идващо от мен, ама къде? :D Аз им бях писал, но не съм получавал отговор от тях - мейли ли получихте, или нещо в системата? Можеш ли да paste-неш някакво инфо тук :) ?

0
p.yordanov avatar p.yordanov 51 Точки

 Хаха, ами в Профил -> Обучения -> Отворени курсове ->   C++ Programming направо ми е излязла оценката.

Мейл иначе не съм получвал, но днес си следях следобяд профила и първо ми излязоха точките от изпита, а вечерта като проверих беше излязла и пълната оценка

1
25/05/2017 20:30:21
MartinBG avatar MartinBG 4388 Точки

И при мен излязоха резултатите.

При теб как е положението с допълнителните точки? Забелязах, че имам само 15 от 20 възможни  точки от домашни, а съм предал всчки домашни в срок. Не че 5 точки ще направят голяма разлика при повторен провал на изпита, но все пак ми е странно защо нямам макс. точки от домашни.

Някой да има прясна информация относно записването за поправката в неделя? Уж трябваше да получим известия по пощата от СофтУни, но до момента липсват, а не остана много време...

0
LubomirSlavov avatar LubomirSlavov 3 Точки

Изпита от 28ми, ще бъде ли пуснат за практика?

0
georgi.stef.georgiev avatar georgi.stef.georgiev 921 Точки

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

Поздрави,

Жоро

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