Спортивне програмування — це захоплива мозкова діяльність чи інтелектуальна розвага для студентів? Як можна потрапити до компанії програмістів-олімпіадників університету? Отже, сьогодні на наші запитання відповідають студенти 2 та 3 курсу факультету комп'ютерних наук.

 

      Але спочатку декілька слів про спортивне программування (СП).

      СП — це розробка коду певною мовою програмування за обмежений час, з використанням математичних та логічних навичок, це змагання щодо вирішення алгоритмічних завдань.

      А тепер уявіть, що ви перебуваєте у Харкові та збираєтеся вирушити на машині до Варшави. Звичайний програміст запропонує нескладний маршрут, і ви дістанетеся міста за 16 годин. Однак спортивний програміст допоможе вам доїхати до пункту призначення, витративши мінімальну кількість бензину та часу, наприклад, 10 годин, використовуючи найхитріші та загадкові розвилки дороги. Наочно цей приклад можна побачити в оповіданні Стівена Кінга «Коротка дорога місис Тодд».

 

— Як студенти приходять  у спортивне програмування?

«Почавши ще у школі, тоді з учителем інформатики вирішували завдання з платформи e-olymp, потім на першому курсі дізнався про олімпіади вищого рівня та загорівся бажанням спробувати».

Діма, 2 курс

«Моє знайомство зі спортивним програмуванням відбулося на першому курсі. Побачив повідомлення у групі, що шукають людину в команду. Було цікаво. Написав, так і прийшов у спортивне програмування».

Діма, 3 курс

«У шкільні роки я брав участь в олімпіадах із програмування. Був єдиний у класі, хто знав, що таке програмування, а на олімпіаду від школи потрібно було когось відправити. Так я вперше потрапив на олімпіаду з програмування (при цьому вийшло пройти на районний етап відбору з першої спроби)».

Денис, 3 курс

 

 

 

— З  чого можна розпочати свій шлях до СП?

«Завдяки онлайн-платформ: leetcode, codewars та інші».

Діма, 2 курс

«Завдання на майданчиках плюс курси Алгоритміки від універу (TechTalents, ХНУРЕ), плюс статті в інтернеті».

Діма, 3 курс

«Сodeforces, книга Олімпіадне програмування (автор Лааксонен)».

Денис, 3 курс

 

 — Який досвід можна отримати від змагань із програмування?

«Бравши участь в ICPC та ProggyBuggy, завжди треба бути зосередженим на завданнях та поважним до тонкощів, не все може бути явним, або навпаки — все може бути легшим, чим очікувалося, як пощастити. Головне не втрачати мотивації після невдач».

Діма, 2 курс

«Брав участь (на сайті codeforces), досвід позитивний. Важливий момент — можна підтримувати рівень знань та перевіряти його динаміку. Щоправда, важливо не лише брати участь у змаганнях, а й розбирати « дорішки» завдань, які ви не змогли вирішити».

Діма, 3 курс

«Дуже класний майданчик (codeforces) рейтинг представляє якесь реальне розуміння свого рівня, який можна підіймати вище й усвідомлювати, що прогрес йде. Спортивне програмування — це набір скілів, якщо є бажання, цілком можна їх натренувати».

Денис, 3 курс

 

— Які можливості для програміста-олімпіадника надає університет?

«Дуже чудова команда олімпіадного програмування (ХНУРЕ), якою керує Вечур Олександр. Хлопці завжди раді студентам, як і справді зацікавлені у досягненні результатів та завжди допоможуть у розвитку».

Діма, 2 курс

«Універ дає чудове ком'юніті студентів та викладачів, яким потрібно вже самому вміти скористатися. А так є різні ініціативи, де можна попрактикуватися та навчитися чомусь. Це курси TechTalents або якісь чергові збори, або студентські змагання».

Діма, 3 курс

«В університеті є курси TechTalents, де вивчають  складні алгоритми. У ХНУРЕ за деякими спеціальностями ці знання можна зарахувати як звичайний предмет».

Денис, 3 курс

 

— Як студент ХНУРЕ може спілкуватися з компанією олімпіадників із СП?

«Потрібно лише слідкувати за оголошеннями від кафедри програмної інженерії про можливі івенти».

Діма, 2 курс

«З приводу того, як «влитися» в компанію — можна написати повідомлення до «Харківської тусовочки олімпіадників» (ХТО) і ви «влиті» в компанію. Або ж написати кілька коментів чи постів на форумах codeforces, якщо не хочеться прив'язуватися конкретно до олімпіадників Харкова».

Діма, 3 курс

«Є ХТО, там, в принципі, завжди можна дізнатися всі олімпіадні новини, запитати поради у досвідчених людей, знайти команду тощо».

Денис, 3 курс

 

— Що для вас значить спортивне програмування?

 «Мені дуже часто допомагає саме алгоритмічне мислення у роботі, під час різних оптимізацій перформансу, або написання нового функціоналу».

Діма, 2 курс

«Якщо вам подобалося вирішувати завдання з математики в школі, то для мене це приблизно той самий досвід. Плюс «алгоритміка» переплетена з різними іншими темами з комп'ютерних наук, які мені цікаві. Можливості, які це для мене відкриває? Наприклад, можливість знайти мінімальний потік у заданій мережі. Тобто на практиці воно мало чого дає, окрім досить специфічного скіл-сету».

Діма, 3 курс

«Спочатку це було щось «типо» гри (коли знайшов Codeforces). Намагався підняти рейтинг, при цьому кожен день вирішував завдання. Потім уже якось продовжив підтримувати скіли шляхом написання контекстів зі « співкомандниками», з якими багато спілкувався та змагався у цей «ігровий» період. З приводу можливостей - потужні знання алгоритмів відкривають двері до топових FAANG фірм, начебто, але це не з власного досвіду».

Денис, 3 курс

 

      Спортивне програмування — це не тільки можливість майбутньому програмісту отримати роботу у великих компаніях, таких як Google, Amazon, Apple, але покращення розумових та логічних здібностей, набуття навичок роботи в команді, допомога у розв'язанні складних питань. А ще іноді це весело!

 

 

Бажаємо успіхів!

Марія Дузь

 

 

 

Популярні статті

Читати далі