Перемогла в 10 міжнародних змаганнях з програмування. 18-річна Софія Мельник — про підготовку та олімпіадне життя

18-річна Софія Мельник — багаторазова переможниця міжнародних змагань з програмування, трикратна срібна призерка Міжнародної олімпіади з інформатики. Захопилась спортивним програмуванням у 9 років. Навчаючись у 5 класі, Софія посіла третє місце на Всеукраїнській олімпіаді з інформатики серед учнів 9 класів. Має рівень гросмейстера на сайті спортивного програмування Codeforces. Нині дівчина навчається на кафедрі інформатики КНУ імені Шевченка. Ми поговорили з Софією про те, як організовані олімпіади різних рівнів, що потрібно для перемоги на змаганнях і які переваги дає олімпіадний рух.

Як захопилася програмуванням

— Привіт! Ти ж уже вчишся на першому курсі КНУ імені Шевченка. Зараз у Києві?

На жаль, ні. Я приїжджала в Київ, коли вступала до університету, поселилася в гуртожиток, пожила там тиждень і поїхала назад додому. У нас все одно дистанційне навчання, тож мені комфортніше в Кременчуці. Хоча, авжеж, це трошки прикрий початок студентського життя...

— Кременчук — твоє рідне місто? Розкажи трохи про себе.

Ні, я народилася в місті Олександрія Кіровоградської області. Коли мені було 10 років, ми переїхали в Кременчук, бо батьків покликали сюди на роботу. Тут я спочатку навчалась у школі з поглибленим вивченням англійської мови, а потім уже перейшла в улюблений ліцей «Політ», де якраз пов’язала своє життя з програмуванням, бо саме там багато часу приділяла цій справі. Моя мама — вчителька фізики, астрономії, ІКТ. Тато — Валентин Іванович Мельник — учитель інформатики, заслужений вчитель України, тренер з підготовки учнів до всеукраїнських та міжнародних олімпіад з інформатики. Старший брат працює програмістом у компанії Snapchat у Києві, тож у нас сім’я математиків і програмістів.

— Хто з рідних посприяв твоєму захопленню програмуванням?

Мені з дитинства подобаються всілякі речі, пов’язані з логікою. Тато уже тоді помітив мою любов до логіки, математики. Також я залюбки спостерігала, як тато займається програмуванням зі своїми учнями, як вони потім приїжджають з олімпіад з медалями, дипломами. Це все дуже надихало. Тому пізніше я почала опановувати програмування з татом.

— А скільки тобі було років?

Приблизно 9. Тоді у тата не було таких маленьких учнів. Я всюди була найменшою, напевно, ще наступні кілька років. Спочатку мені було важко вивчати алгоритми, але вже в 11 років (у п’ятому класі) я вперше потрапила на Всеукраїнську олімпіаду з інформатики. На перших трьох національних олімпіадах, де я брала участь, мені навіть давали приз як наймолодшій учасниці.

— Пам’ятаєш своє перше змагання?

Ні, але пам’ятаю першу серйозну олімпіаду. Це була обласна олімпіада з інформатики, я посіла друге місце серед восьмих класів, хоча сама була в четвертому. Тоді я думала, що це просто змагання, можливість виграти, показати себе, але потім, коли я вже почала спілкуватися з іншими олімпіадниками, для мене це переросло в щось набагато більше, це вже була моя друга сім’я.

Пам’ятні олімпіади та задачі

— Перша твоя міжнародна олімпіада була в Японії, друга — в Азербайджані, а третя?

Мала бути в Сінгапурі, насправді я ще з восьмого класу мріяла потрапити туди. Тож неймовірно зраділа, коли дізналася, що якраз там буде моя остання міжнародна олімпіада. Однак через пандемію її проводили онлайн.

— Яка з олімпіад була для тебе найскладнішою?

Напевно, остання міжнародна. Це був мій 11 клас. Пам’ятаю, сиділа й не знала, що буде далі через карантин. Спочатку олімпіаду взагалі скасували, потім передумали й повідомили, що проведуть онлайн. Я дуже хвилювалась, хотілося показати гарні результати. На самій олімпіаді теж було складно, бо була зовсім інша атмосфера. Я звикла, що пишу в оточенні людей, а так нас сиділо четверо в кабінеті, ми працювали під камерами. У тій системі, де ми розв’язували задачі, записувався наш екран, щоб не було такого, що хтось щось шукає. Також записувалися наші обличчя через комп’ютер і стояла ще додаткова камера, яка фіксувала повністю весь клас, щоб було видно: ніхто ніяк не допомагає учням.

— Чи були випадки дискваліфікації?

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

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

— Тобто зазвичай результати можна побачити одразу під час олімпіади?

Так, звичайно, на всіх олімпіадах є онлайн-таблиці для вболівальників. Коли триває змагання, ми здаємо рішення та одразу отримуємо бал за нього. Все це виводиться в онлайн-табличку.

— Які зі змагань чи перемог пам’ятні для тебе?

Ми багато їздили на змагання за кордон, не тільки на міжнародні шкільні олімпіади з інформатики. Були в Білорусі, Словаччині, Словенії... Брали участь у різних олімпіадах, наприклад, у румунській: вони проводили свій турнір і запрошували інші країни до участі. Але найбільше запам’яталася олімпіада в Японії, тому що для мене це був інший світ, було дуже цікаво спілкуватися з людьми із зовсім іншим менталітетом. Плюс це була моя перша міжнародна олімпіада. Ще одна важлива перемога — золота медаль, яку виборола на Європейській олімпіаді з інформатики для юніорів, що проходила в Болгарії.

Разом з нашим гідом на Міжнародній олімпіаді в Японії. Ми з нею добре потоваришували та досі іноді спілкуємось

— У Болгарії ти була єдиною з дівчат, яка потрапила до десятки найкращих, показавши 6-й результат в абсолютному заліку. Більшість учасників на змаганнях — це хлопці?

Так, відсотків 90.

— Чи не виникало в тебе складнощів через це? Відчувала особливе ставлення (гарне чи погане)?

Насправді я звикла до цього. Так, я обрала таку справу, якою займаються переважно хлопці. Наприклад, довгий час я була єдиною дівчиною в команді від Полтавської області на всеукраїнській олімпіаді. Я взагалі єдина дівчина з України, яка потрапила на міжнародну олімпіаду.

Але я ніяк не акцентую на цьому увагу, змагаюся нарівні з хлопцями — і мені це подобається. Хоча є люди, які з подивом і зацікавленням на це дивляться.

Ще можу сказати, що нині ситуація змінюється. В олімпіадному русі стало набагато більше дівчат. Як і загалом у програмуванні. Деякі дівчата мені навіть іноді пишуть: «От я беру приклад з тебе». Дуже приємно, що вони зрозуміли на моєму прикладі: дівчата теж можуть вигравати та боротися нарівні з хлопцями.

Щодо особливого ставлення, то такого нема. Ось коли я була в п’ятому чи шостому класі та перемагала учнів зі старшої школи, тоді так, на мене могли ображатись: «Така маленька, а в мене виграла...» Чула інколи таке. А через те, що я дівчина, мене ніяк не виділяють. Я спілкуюся зі всіма на рівних і не почуваюся «іншою» у компанії. Я своя серед своїх, і це класно.

— А задачі, є ті, що найбільше запам’яталися? Були найскладнішими чи найпростішими?

Звичайно, на міжнародних олімпіадах усі задачі складні. Бувають навіть такі, на яких важко набрати декілька балів. Хоча на одній міжнародній олімпіаді була задача, за яку я швидко отримала 100 балів. Але тоді мені пощастило, що я її дуже швидко розв’язала та змогла приділити час іншим задачам.

На останній міжнародній олімпіаді у першому турі мені вдалось здати дві задачі на повний бал. Але найважчу я все-таки не змогла до кінця подолати. На ній я набрала 49 балів зі 100 — і це був теж непоганий результат. Коли я повернулась додому і розбиралась з рішенням, задача виявилась справді складною. Не думаю, що у мене була можливість розв’язати її під час турніру на повний бал.

А ось ця задача була найлегшою у першому турі. Її здали більшість учасників на повний бал. Мені вона теж не видалася важкою, там не потрібно було писати складні алгоритми, лише добре подумати над логічним рішенням. На Міжнародній олімпіаді в Японії у 2018 році була задача, яку подужало багато учасників, але я, на жаль, з нею не впоралась і отримала 53 бали. Тепер уже не пам’ятаю чому, можливо, тоді я не була достатньо підготовленою.

— А були невдачі, коли ти взагалі не змогла знайти рішення?

Відкриття першої Юніорської європейської олімпіади з інформатики (EJOI 2017). Тоді я неабияк переживала й виграла золоту медальВідкриття першої Юніорської європейської олімпіади з інформатики (EJOI 2017). Тоді я неабияк переживала й виграла золоту медаль
Так. І дуже багато. У мене нечасто виходить набрати максимальний бал. Зазвичай на міжнародних олімпіадах я могла здати одну задачу, а на інших завданнях ще набрати додаткові бали для того, щоб отримати високе місце. На всеукраїнських олімпіадах так само. Я могла виконати дві чи три задачі, але чотири задачі з чотирьох ніколи не розв’язувала. Але не можу сказати, що це «невдача», тому що, як правило, ніхто не здає чотири задачі на повний бал. Наприклад, коли я була у десятому класі, то набрала дуже низький бал на всеукраїнській олімпіаді. Принаймні я так думала. Тобто із 400 балів у мене було приблизно 230. І я дуже засмутилася, бо торік сума моїх балів була набагато вищою, тож я очікувала, що маю показати кращий результат. У мене була паніка, я вже накрутилася, що не потраплю на міжнародні змагання... Але, як потім виявилося, у мене був максимальний бал серед усіх учасників, тож насправді хвилюватися не потрібно було.

Підготовка до олімпіад

— Як проходить підготовка до олімпіад? Ти зазвичай готуєшся до якогось конкретного змагання чи триває постійна підготовка?

У школі ми готувалися постійно. Але перед самими олімпіадами не було такого, щоб я сиділа, повторювала якісь задачі, алгоритми. Навпаки, за день-два до змагання я відпочивала від підготовки, збиралася з думками, щоб сповненою сил прийти на олімпіаду та виграти.

Були такі змагання, до яких треба було готуватися окремо. Наприклад, до Міжнародної олімпіади в Японії, адже в нас була велика різниця в часі — 6–7 годин. Тож щоб не було такого, що ми приїхали туди й постійно хотіли спати, за два тижні до поїздки ми потихеньку переходили на японський час. Я вставала о другій ночі (в Японії це була дев’ята ранку), годину налаштовувалась, а потім 4–5 годин розв’язувала задачі. Тобто звикала, що вночі мені потрібно писати контест. Коли приїхала в Японію, було дуже легко звикнути до їхнього часу.

— Тобто ти не сама так готувалася, а й інші члени команди теж?

У той рік вийшло так, що три людини, які їхали на міжнародну олімпіаду, були учнями мого тата. Тому ми готувалися разом. Це було краще, бо ти неохоче прокидаєшся вночі, але тобі є з ким поспілкуватися, є підтримка.

— А як відбувалася постійна підготовка? Зараз ти так само продовжуєш займатися?

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

— Яким був твій звичайний день, коли ти навчалася у школі?

Я прокидалася, збиралася в школу, де було в середньому три чи чотири пари. Після того йшла на гурток програмування, займалася дві-три години. Потім усі розходилися, і кожен уже сам вирішував, чи робити ще щось вдома. Я зазвичай багато часу приділяла програмуванню, тому готувалася додатково. Взагалі я точно займалася 3–4 години вдень. Тобто вдома я виконувала домашні завдання і виділяла час, щоб ще щось розв’язати. Крім того, я старалася вийти на вулицю, прогулятись зі своїм собакою, подихати свіжим повітрям, відпочити.

— Читала, що ти ще професійно займалася танцями?

Так, я займалася бально-спортивними танцями 7 років. Але потім зрозуміла, що мені важко поєднувати їх з програмуванням, тож вирішила, що останнє для мене важливіше. На цьому моя танцювальна кар’єра закінчилася. Нині я знову почала займатися танцями, але вже іншими й не професійно, просто для себе. Коли стала навчатися в університеті, мені легше виділити вільний час на це захоплення.

Тут я зовсім маленька, мені років 8. Тоді я ще займалась бально-спортивними танцями

— А у вихідні під час навчання у школі ти теж займалася програмуванням?

Ми не збирались на гурток, але у вихідні влаштовували тренувальні змагання. Тобто там не давали призів, але через те, що ти писав 5 годин, як зазвичай на олімпіаді, можна було відчути схожу атмосферу. Бо одна річ, коли ти такий: «От я зараз сяду, розв’яжу одну задачу, другу, потім відпочину...» І зовсім інше, коли треба 5 годин сидіти й писати, коли є чітке обмеження у часі й ти маєш зібратися з думками. Такі ініціативи часто відбувалися у вихідні. Напевно, 1–2 турніри кожні вихідні.

— Не було такого, що бракувало часу на інші речі? Можливо, на спілкування з друзями?

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

— Більшість твоїх друзів теж займаються програмуванням?

Так, справді більшість моїх друзів — програмісти. Наприклад, свою найкращу подругу я зустріла в таборі з програмування, і ми вже 6 років дружимо. Але в мене є кілька друзів не програмістів, з ними теж цікаво.

— Як я розумію, тебе тренував батько? Зараз уже готуєшся самостійно чи ні?

Тепер я більше займаюся самостійно, сама обираю, чому мені приділяти час, на яку саме підготовку. Також мені подобається допомагати іншим з олімпіадним програмуванням, я допомагаю татові з його учнями. Наприклад, читаю лекції для усіх ліг на літніх і зимових всеукраїнських комп’ютерних школах «Олімп», які організував тато в Кременчуці. І мені це сильно подобається.

Обожнюю це фото. Тут я з батьками в 6 класі на всеукраїнській олімпіаді. Вони завжди мене підтримували й були поряд, за що я дуже вдячна

Що потрібно для успішного проходження олімпіад

— Якими мовами програмування, технологіями ти володієш?

Насправді більшість моїх знань пристосовані до олімпіадного програмування, тому що цим я займаюся майже все життя. Коли я починала програмувати, це був паскаль, але потім перейшла на найбільш універсальну для олімпіади мову — C++. Нині я продовжую вивчати її вже більш поглиблено. Сподіваюся, це допоможе мені знайти потім гарну роботу. Олімпіади вчать тебе швидко розуміти задачу, швидко її розв’язувати, але тепер розумію, що мені потрібно опановувати ще щось. І саме цим я займаюсь.

— Які потрібні навички для участі в олімпіадах?

Наприклад, здатність повністю налаштуватися на олімпіаду, не відволікатися на сторонні звуки — як хтось там по клавішах б’є. Взагалі першочергове — просто бажання цим займатися. Насправді є багато інформації в інтернеті, чимало сайтів, де можна підготуватися до олімпіад. Я в школі намагалася максимально використовувати інтернет-ресурси, здебільшого вивчала там алгоритми, структури даних тощо.

— Якщо ще говорити про риси, які потрібні...

Мені здається, важливою є працелюбність. Наприклад, можна прочитати якийсь алгоритм і вирішити: «Ну все, я його знаю». А цього недостатньо. Як каже мій тато, важливим є «нарішування» задач. Що більше розв’яжеш різнопланових задач, то краще підготуєшся до змагання. Звичайно, тобі не попадеться точно така ж задача, але завдяки цьому вчишся швидше розуміти завдання, знаходити різні підходи до нього, обирати, який з них буде найефективнішим.

Також сюди додам дисципліну. Одна з моїх улюблених фраз тата: «Ось ти готуєшся місяць, у тебе є певні знання за місяць. Тиждень не готувався — знання за місяць зникли. Не готувався місяць — зникли знання за рік». Це справді так працює. Якщо робиш довгі перерви, перестаєш так швидко розв’язувати задачі та знаходити різні рішення. Можна витрачати не багато часу, але робити щось кожного дня. А не так, що місяць готувався, місяць не готувався.

— Сьогодні теж «підтримуєш форму»?

Ми з татом на першій Юніорській європейській олімпіаді з інформатики 2017 року. Це вже фото з нагородження, де я із золотою медаллюМи з татом на першій Юніорській європейській олімпіаді з інформатики 2017 року. Це вже фото з нагородження, де я із золотою медаллю

Стараюся розв’язувати олімпіадні задачі, тому що вони допоможуть у студентських олімпіадах, але витрачаю на це вже не так багато часу, як у школі. Займаюся майже щодня, але приділяю увагу вивченню чогось нового. У цьому плані олімпіадне програмування відійшло на другий план. Але я продовжую тренуватися, тому що це, по-перше, цікаво, а по-друге, «місяць не позаймаєшся — всі знання зникли», тому так, я підтримую форму.

— Для тебе це робота чи відпочинок? Чи, можливо, спосіб відволіктися?

Як я казала, спочатку для мене це було просто змагання, можливість вибороти призове місце. Але потім це стало не лише хобі, а моїм життям. Тому я таким чином і відпочиваю, і розвиваю себе... Не можу сказати, що це колись було роботою. Це просто моє життя, частина, яку неможливо забрати.

Етапи олімпіад

— Які потрібно пройти етапи, щоб потрапити на міжнародну олімпіаду?

Я буду розповідати, як це було, коли я брала участь в олімпіадах до пандемії. Спочатку відбуваються шкільні та міські олімпіади. Але оскільки ліцей, в якому я навчалася, проходить у змаганнях як окреме місто, то для мене шкільна та міська олімпіади — це було просто прийти у ліцей і виконати завдання. Далі йшла обласна олімпіада, її теж проводили в нашому ліцеї, туди з’їжджалися всі діти з області. Було два тури по 5 годин у суботу та неділю. Ти приходиш, реєструєшся, потім усіх садять по різних кабінетах так, щоб поряд не було знайомих або учнів з однієї школи. За результатами цього етапу учасники виходили на відбори на всеукраїнську олімпіаду.

На всеукраїнську олімпіаду з’їжджалися учні з усіх областей за квотами. Тобто в кожної області була своя квота, скільки людей вона може послати на змагання. Вона змінювалась щороку, залежно від виступу учасників: враховували результат на минулій всеукраїнській олімпіаді, кожне призове давало додаткові місця тощо. Наприклад, якщо у нашої Полтавської області була квота 7 людей і ми вибороли три перших місця, нам додавалося ще три місця. Але тепер через пандемію все змінилося.

Взагалі кожна область сама вирішувала, кого послати на всеукраїнські змагання. На Полтавщині були відбори: учасники їхали в табір, де проводили 4–5 турів, щоб вибрати тих, хто вирушить на національну олімпіаду. Бо всі розуміють, що за два тури обласної олімпіади діти могли перенервувати та не показати всі знання, які є. Інша річ, коли перебуваєш у таборі зі спокійною атмосферою. На такі відбори зазвичай приїжджало людей 40, вони тривали тиждень.

На всеукраїнській олімпіаді також проводили два тури, з тією різницею, що зазвичай між ними був день відпочинку. Нам організовували екскурсії, ми могли просто погуляти — щоразу олімпіаду влаштовували в різних містах. Я так їздила в Дніпро, Рівне, Миколаїв, Одесу... Після всеукраїнської олімпіади певна кількість учасників проходила на відбори на міжнародну олімпіаду. І далі ці 8–20 претендентів з’їжджалися разом і писали відбори — аж шість турів, щоб точно відібрати тих чотирьох, які будуть достойно представляти нашу країну. Ці відбори проводилися під управлінням Міністерства освіти, але теж у таборі в нашій області. Чому? Бо це таке зручне місце, де налаштоване проживання, харчування, учасники можуть погуляти, відпочити, є теніс, волейбол, футбол... Ми також жили там тиждень: три тури по 5 годин щодня, день відпочинку і знову три тури кожного дня.

— Скільки разів ти брала участь у всеукраїнських олімпіадах, скільки у міжнародних?

У всеукраїнських з п’ятого класу — виходить 7 разів. І тричі у міжнародних (9–11 класи).

— А чому до дев’ятого класу не проходила на міжнародні?

Думаю, тому що я не можу дуже швидко чогось навчитись, тільки потрохи. Це видно за результатами на всеукраїнських олімпіадах. У п’ятому класі в мене був третій диплом, у шостому — другий, у сьомому — вже перший. Спочатку мені важко було змагатися зі старшими учнями. Наприклад, я не могла знати математику на такому ж рівні, як 10—11-класники. Але вже у дев’ятому класі я потрапила на відбори й одразу ж пройшла на міжнародну олімпіаду.

Всеукраїнська олімпіада у 2018 році. Тоді у нас були командні футболки з надписом «Melnyk team» — як на мене, це мало класний вигляд

Міжнародні шкільні олімпіади з інформатики

— Як організована міжнародна олімпіада?

На ній два тури, але завжди багато днів для відпочинку, екскурсій... Наприклад, коли ми прилетіли в Японію, як я вже казала, для нас це був інший світ, хотілося побувати всюди, де тільки можна. І така можливість була. Для кожної команди є гід — людина, яка відповідає за вас, стежить, щоб ви не запізнювалися на сніданок, обід, вечерю, на тур, може порадити, в якому магазині краще купити шоколадку або просто погуляти з вами містом... На всеукраїнській олімпіаді теж були гіди для кожної команди. Але це не так потрібно, бо в Україні розібратися у схожих речах неважко.

Отже, міжнародна олімпіада триває 7–10 днів. Зазвичай такий розклад: день приїзду, день відпочинку, відкриття, перший тур, знову день відпочинку, другий тур, день відпочинку, закриття олімпіади та від’їзд. Наприклад, в Японії ми були 8 днів, а в Азербайджані — 10 днів, тому що ми прилітали найраніше і поверталися пізніше.

— Хто їде на міжнародну олімпіаду, крім учасників?

Точно їдуть дві людини: лідер і deputy лідер — це представники Міністерства освіти. Вони відповідають за нас, вирішують всі організаційні питання. Іноді летять гості — ті, хто хоче підтримати учасників. Вони самі платять за переліт і внесок за перебування на олімпіаді. Так, в Японію та Азербайджан гостем полетів мій тато, щоб мене підтримати. А для самих учасників, звісно, усе безкоштовно. Внесок за команду та переліт оплачує міністерство. Нам потрібні були лише кишенькові гроші, щоб купити сувеніри або якусь шоколадку.

— Чим відрізняється міжнародна олімпіада від всеукраїнської?

По-перше, відчуттями. Ти приїжджаєш на всеукраїнську олімпіаду і почуваєшся у своїй тарілці — наче ти нікуди не виїжджав. На міжнародній не так. По-друге, сама організація набагато серйозніша. Вони відповідають за дітей, які приїхали з інших країн. В тому ж Азербайджані організатори дуже боялися, щоб з нами нічого не сталося, тому навіть не випускали нас за межі комплексу. На всеукраїнських олімпіадах простіше розібратися: тут ти снідаєш, обідаєш, вечеряєш, тут — живеш, а там — пишеш завдання. На міжнародній олімпіаді складніше. Бувало, що від пункту А до пункту Б потрібно пройти пішки буквально 10 хвилин, але нас все одно возили на автобусах.

— А що стосується самих змагань? Є відмінності?

Для мене значна відмінність — те, що на всеукраїнських змаганнях нас ділять на класи. Тобто умовно є 20 класів, де кожен сидить на своєму місці, таким чином в аудиторії перебуває 15–20 людей. А на міжнародній олімпіаді все це відбувається в одному приміщенні. Тобто поруч з тобою приблизно 300 учасників. Авжеж, усіх теж розсаджують так, щоб було зручно, щоб ніхто не міг дивитися до тебе в комп’ютер, а ти — у чужий. Але все одно через це інше відчуття, бо навколо стільки людей.

А так завдання для всіх однакові: що на всеукраїнських олімпіадах, що на міжнародних. Тобто неважливо, скільки тобі років, у якому ти класі, всі отримують однакові задачі. До речі, на міжнародній олімпіаді є обмеження щодо учасників. По-перше, ти маєш навчатися в школі. По-друге, мати менше ніж 21 рік, бо у деяких країнах вчаться набагато довше.

— Чи має значення, як швидко ти розв’язав задачу?

Ні, час взагалі не має значення, тільки бали, які ти набрав. Звичайно, на міжнародній олімпіаді важко виконати всі задачі на 100 балів, тому ти сидиш усі 5 годин і до останнього намагаєшся набрати більше балів, бо кожен бал може зіграти велику роль у твоєму розташуванні в таблиці. Аналогічно відбувається на всеукраїнській олімпіаді.

Щодо кількості задач, то на всеукраїнській олімпіаді на кожному турі чотири задачі, а на міжнародній — три. Але хоча їх менше, вони зазвичай складніші. До того ж задачі не відсортовані за складністю, як на всеукраїнських змаганнях. На національній олімпіаді школярам зручно, що перша задача простіша, зазвичай більшість учасників здає її на 100 балів.

— Чи стикалась ти з випадками корупції на всеукраїнських чи міжнародних змаганнях?

Ні, не пригадую такого. Мені здається, все дуже прозоро, всі бачать, як проходить олімпіада. Нема такого, що, наприклад, в одному кабінеті перебувають люди лише з однієї області. Всі учасники здають свої телефони, кожен сідає за свій комп’ютер. На міжнародній олімпіаді теж суворо стежать, щоб усе було чесно. Завдання видають у закритих конвертах, які ми самі розриваємо.

Тут видно, як організовані міжнародні олімпіади. Усі сидять в одному приміщенні

Заняття, крім олімпіад

— Я прочитала у Вікіпедії, що у 2018 році ти досягла рівня гросмейстера на сайті спортивного програмування Codeforces. Розкажи про це.

Мені здається, що це найпопулярніший сайт зі спортивного програмування (там близько 600 тисяч користувачів). На ньому часто проводять олімпіади — буквально раз на три-чотири дні. Але вони там тривають не 5 годин, а 2. Ще цей сайт має великий архів різнопланових задач, за допомогою яких можна готуватися. Тобто це класна платформа для початківців і не тільки. Там є система рейтингу, яка будується на результатах змагань, і градація за кольорами. Я колись довго мріяла стати «червоною», тобто досягти рівня гросмейстера, але ніяк не вдавалося.

І ось одного разу я була в таборі й написала олімпіаду на Codeforces. А там така система, що твій розв’язок задачі оцінюють один раз, але потім ще можуть перетестувати. Я все виконала начебто добре, але побачила, що попередньо за рейтингом мені знову трошки не вистачило до червоного рівня. Авжеж, я засмутилася. Але потім було вже пізно, 11-та вечора, я сиджу з дівчатами у своїй кімнаті й бачу, що на сайті йде перетестування і в багатьох людей починає злітати одна задача, тобто вони не передбачили якийсь випадок. Думаю: «Що ж далі буде...» Закінчується ця процедура, дивлюсь: мені якраз трошки додалось балів, і я потрапила в червоний колір. Я тоді так закричала від радості, що до нашої кімнати забігли перелякані вожаті, думаючи, що комусь стало погано.

Може здаватися, що коли на Codeforces буквально трошки бракує рейтингу, то його легко добрати. Але насправді здобути рівень гросмейстера складно. І втримати також. Одне погано виконане завдання — і ти можеш випасти з червоного кольору. Потім я теж випадала кілька разів, але поверталася. Наразі мій рейтинг — 2455. Найвищий, який мала, був 2528. Якщо брати по всьому світу, то я на 493-му місці (людина на першому місці має рейтинг 3682).

— Ти згадувала, що проводиш тренінгові заняття у школах «Олімп». На які теми?

Зимові та літні школи організовував мій тато. Вони спрямовані на те, щоб дати учасникам багато матеріалу, але при цьому щоб вони встигли його попрактикувати. У передостанній день проходить кубок Кременчука, де всі пишуть олімпіаду і можуть виграти цінні призи від спонсорів.

Усі діти поділені на чотири ліги за рівнем знань. І для кожної ліги є свої теми. Учасникам читають лекції, наприклад, з якогось алгоритму або певної частини теми олімпіадного програмування, а далі вони практикуються, розв’язують задачі на цю тему. Вперше я спробувала читати лекцію ще у восьмому класі. Тема була така: «Система неперетинних множин». Було важко, особливо тому, що в групі були старші за мене діти. Але думаю, що у мене все вийшло. До того ж мені допомагали готуватися до лекції тато й інші лектори. У нас сформувався дуже дружній колектив. Відтоді я читаю одну-дві лекції за зміну.

— Чим ще захоплюєшся, крім програмування?

Коли я закінчила професійно займатися танцями, у мене з’явилось сильне бажання читати книги. Тож я вважаю, що тепер це моє хобі, я багато читаю, переважно художню літературу. Я великий фанат Гаррі Поттера. Багато разів читала усі книжки Ролінґ українською, а зараз перечитую в оригіналі. Я люблю колекціонувати книги, тому, коли приїжджаю в нове місто, обов’язково купую собі певне видання. А ще колекціоную цукор :) Може, це дивно звучить, але у мене вже близько 700 стиків з різних міст і країн.

Зліва — тренувальний тур Центральноєвропейської олімпіади з інформатики. Справа — моя перша срібна медаль на Міжнародній олімпіаді з інформатики. Напевно, по обличчю видно, наскільки я була щаслива!

Навчання в університеті та студентські олімпіади

— Поговоримо про навчання в університеті. Як ти обрала конкретну спеціальність і навчальний заклад?

Я точно знала, що піду на факультет кібернетики, спеціальність — інформатика. Тут навіть варіантів не було. Я хотіла вчитися в Києві, тому що мені подобається це місто. А Київський національний університет імені Шевченка обрала тому, що там вчився мій брат і вчиться багато друзів, я чула їхні відгуки.

— До речі, твій брат теж брав участь в олімпіадах?

Брат старший за мене на 11 років. Тож ми ще жили в Олександрії, коли він навчався в школі та займався олімпіадами, але не на такому серйозному рівні. Здається, у нього був третій диплом на всеукраїнській олімпіаді.

— Напевно, було легко вступити до університету з твоїми досягненнями?

Насправді було легко. Призерам або навіть учасникам міжнародної олімпіади в Україні автоматом зараховують два ЗНО по 200 балів. Тобто я могла обрати будь-які два предмети й отримати за них 200 балів. ЗНО з математики я сама склала на 200 балів. Тож вийшло, що мій середній бал був 200, тому я не хвилювалася і знала, що точно вступлю.

— Ти вже брала участь у студентських олімпіадах?

Цього року поки що відбулись тільки 1/8 й 1/4 етапи ACM/ICPC — найбільшої студентської командної олімпіади з програмування. Наразі моя команда готується пройти півфінал. 1/8 була на рівні університету, 1/4 — на рівні регіону в Україні. Ми навчаємось у Києві, тому це був північний регіон. Далі буде всеукраїнський етап — це 1/2. Потім відбудеться відбір на світовий фінал від регіонів світу, тобто виходить, що ми змагатимемось за вихід на міжнародну олімпіаду з деякими іншими країнами, але, якщо переможемо, виступатимемо за свою. Таким чином олімпіада триває цілий рік.

— Чим студентська олімпіада відрізняється від шкільної?

Вона проходить так само, як і для школярів, раз на рік. Але у ній всього один 5-годинний контест, а не два. Ще студентська олімпіада відрізняється тим, що тут якраз має значення, як швидко ти розв’язуєш задачу. Ще враховують, скільки ти витратив неуспішних посилань, тобто коли твоє рішення не пройшло усі тести, від чого залежить так званий «штраф». Далі команди сортуються за кількістю розв’язаних задач і найменшим штрафом.

Крім того, в ACM / ICPC змагаються не окремі люди, а команди — три людини за одним комп’ютером. Нині все відбувається в онлайн-форматі, теж потрібно встановлювати камеру, записувати екран тощо.

На 1/4 командам дозволили писати офлайн у конкретних точках. Наприклад, ми збиралися в ліцеї «Політ», бо всі члени нашої команди, хоча вчаться у Києві, самі з Полтавської області.

Це мій талісман. Він був зі мною на кожній олімпіаді та відвідав багато країн

Плани

— У чому твоя особиста зацікавленість участі в олімпіадах?

Звичайно, як і будь-якій іншій людині, мені подобається перемагати. А ще завдяки олімпіадам я знайшла багато друзів. Як я уже згадувала, моє основне коло спілкування — програмісти. Я познайомилася з ними в різних місцях, і знайшла в них велику підтримку. Є навіть декілька людей з міжнародних олімпіад, з якими ми досі спілкуємося, і це круто. Наприклад, на юніорській олімпіаді я познайомилася і довго спілкувалася англійською з дівчиною з Боснії і Герцеговини, на міжнародній — з іноземцем з Домініканської Республіки, але він розмовляє російською, тому комунікувати було простіше.

Ну а найголовніша причина — мені дуже подобається займатися програмуванням.

— А які риси, звички допомогла виховати участь в олімпіадах?

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

— Чим хочеш займатися в майбутньому в професійному плані?

Насправді я не визначилася, де хотіла б працювати. Знаю тільки, що це буде пов’язано з програмуванням. Наразі просто вчуся, мені подобається в університеті, я не готова відразу йти кудись працювати.

— Хочеш саме програмувати, а не викладати?

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

До речі, після олімпіад мене запрошували працювати програмістом, але мені тоді ще не було навіть 18 років. Часто пропонували бути репетитором. На таких платформах, як Codeforces, запрошували стати сетером задач, тобто давати задачі в турнірах. Також була пропозиція вступити до Ягеллонського університету в Кракові на безкоштовне навчання. Але я вирішила залишитись в Україні, бо тут у мене багато друзів, сім’я, не уявляю, як би поїхала в іншу країну сама.

— Чи є плани на найближче майбутнє?

Насправді я сподіваюся, що буде можливість жити та навчатися в Києві, бо вже хочеться ходити на пари в університет, бачитися зі своїми одногрупниками — я ж з ними майже не знайома. Бракує живого спілкування, як і більшості людей сьогодні. Звісно, сподіваюся, що ми пройдемо у фінал студентської олімпіади, я буду докладати максимум зусиль. Хоча це буде непросто, тому що змагається багато сильних команд.

— І останнє питання. Чи є у тебе життєвий девіз чи принцип, якого намагаєшся дотримуватися?

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

👍НравитсяПонравилось57
В избранноеВ избранном9
Подписаться на тему «математика»
LinkedIn



Підписуйтесь: Soundcloud | Google Podcast | YouTube


39 комментариев

Подписаться на комментарииОтписаться от комментариев Комментарии могут оставлять только пользователи с подтвержденными аккаунтами.

Очень круто! Интересное интервью. Желаю Софии дальнейших успехов!

Очень талантливая и умненькая девушка!

круто! если будет интересна интернатура в амазоне — обращайтесь :)

У 17 років потрапити в Вікіпедію — це дуже круто.
Пишаюся, що у нас росте така молодь! Бажаю виграти і золоту медаль на Олімпіаді.

Круте інтерв’ю
Крута історія
Крута дівчина
Круте ім’я в тему

Бажаю Софії подальших успіхів, а іншим брати приклад і робити діло, а не нити і просити квот

Пам’ятаю як у шкільні роки Кременчуцький ліцей Макаренка був меккою для школярів по олімпіадному програмуванню через Валентина Мельника. В таборі Ерудит на заїзді з програмування більше половини були з ліцею під його керівництвом

О, я туди в Ерудит їздив років 15 тому. Програмували, так.

Молодець!

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

щось у цій людині є дуже особливе

Ну, после зачета с uses crt давал по гонять в quake по сетке :)

Ну дядька вроде не сырно-смузивного типа.

Яка чудова молодь у нас підростає! Дивишся на них і розумієш, для кого ми намагаємось зберегти країну.

Успіхів! Великий молодець!

Завжди захоплювався тими, хто ще в школі навчився розв’язувати олімпіадні задачі з програмування. Адже такі люди ще зі школи володіють навиками, що дають змогу пройти співбесіду в відомі своїми величезними заробітними платами славетні корпорації, розробками яких користуються мільярди людей.
Тобто прямо після закінчення університету людина, що володіє цими навиками, може за кордоном заробити собі на власне житло в центрі Києва та ще й відкласти грошей на кілька років веселого та безтурботного життя. А в дитинстві, коли маєш слухатись батьків, все одно не відпочинеш настільки весело, як в старшому віці, маючи власне житло і живучи власним розумом. Тож освоєння високооплачуваної професії в шкільні роки — дуже далекоглядний крок.

Не факт, життя досить складна штука.

А що саме не факт — те що в в старшому віці, маючи власне житло і живучи власним розумом, відпочивається веселіше, ніж в дитинстві, чи те, що люди, які вміють вирішувати задачі з програмування рівня міжнародних олімпіад, заіграшки проходять співбесіди в відомі своїми величезними заробітними платами славетні корпорації, розробками яких користуються мільярди людей, оскільки на таких співбесідах задачі значно легші, ніж на міжнародних олімпіадах з програмування?
А з тим, що життя складна штука, я погоджуюся, але вважаю, що моє життя через те і складне, що не навчився розв’язувати олімпіадні задачі з програмування в школі. Як то кажуть, важко в навчанні — легко в бою.

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

пройти співбесіду в відомі своїми величезними заробітними платами славетні корпорації,

то, может, и не надо? Вдруг дело не в нарешивании сотни задач на теорию графов и обходы дерева в любой проекции.

Людині з досвідом уже буде недостатньо шкільного олімпіадного рівня для успішного проходження співбесіди до вищезгаданих славетних корпорацій. На форумі один досвічений РПЗ створив тему, в якій повідомив, що намагався пройти співбесіду в одну з таких організацій. Задачки вирішив, а системний дизайн завалив. Як йому пояснили, від людини з досвідом очікують ще й системний дизайн. А от людина, що такі задачі навчилася вирішувати ще в школі, в славетні корпорації може легко потрапити відразу ж після закінчення університету. Як кажуть, дорога ложка до обіду.
Ну і вільний від роботи час дорослій людині з досвідом прикладного програмування зачасту хотілося б уже нарешті використовувати на веселий відпочинок, а тут потрібно ще й сотні задач на теорію графів та обходи дерева у будь-якій проекції вирішувати, щоб потрапити до славетних корпорацій. Тож в принципі, дорослій людині це вже дійсно не дуже й потрібно. Адже основні роки, коли це вміння давало значну перевагу, уже позаду, і однолітки дорослої людини, які з школи вміли вирішувати такі задачі, мають або значно легший життєвий шлях (раніше придбане житло в Києві, багато років веселого відпочинку в Україні за зароблені за кордоном кошти), або значно більші статки (виплачена іпотека за дорогий будинок за кордоном, чималенька сума в акціях славетних корпорацій).

Думаю, вы переоцениваете значение олимпиадных задач и побед над ними

Насправді я повною мірою зрозумів, наскільки важливим є навик розв’язання олімпіадних задач, почитавши тут на форумі тему під назвою «24 онсайти у Долині, або релокація». Працювати в організаціях, в яких РПЗ платять найбільше у світі, мріють дуже багато РПЗ з усього світу, бо заробляти багато хоче кожен. Щоб відфільтрувати кандидатів, такі організації придумали давати на співбесідах алгоритмічні задачки. І людина, що зайняла призове місце на міжнародній олімпіаді з розв’язування алгоритмічних задачок, заіграшки розв’яже задачі, які дають на співбесідах у такі корпорації.

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

ну кроме тех кого теща не отпускает с огорода)

Справа в тому, що якщо людина не вміє вирішувати обговорювані задачі, то у вищезгадані корпорації її не візьмуть. І якщо в співробітників славетних корпорацій до пенсії купа грошей і на 401(k), і в акціях славетних корпорацій, та ще й іпотека виплачена за будинок вартістю в кілька мільйонів американських грошей, то в РПЗ в Україні, навіть якщо працює за КЗпП, пенсія хоч і у кілька разів більша ніж у інших пенсіонерів в Україні, але все одно невелика. І з цієї пенсії потрібно жити подружжю пенсіонерів. Тож забувати навики обробки городу не варто — стануть в нагоді на пенсії, щоб харчуватися овочами зі свого городу.

Ваша позиция понятна. По вашей логике крупные ИТ корпорации должны прям охотиться за олимпиадниками в первую очередь. Но нет. Бизнес делают не победители олимпиад — хотя таковые лица очень важны конечно.

Так вони й полюють за ними. Навіть у цій темі відписалися дописувачі, що згадували про три великі корпорації, і пропонували автору (яка зараз навчається на першому курсі) та іншим переможцям олімпіад свою допомогу у працевлаштуванні. Щодо того, хто робить бізнес — бізнес технологічних корпорацій базується на ПЗ, написаному талановитими РПЗ.

Ну если комменты здесь на форуме — это, по-вашему, охота.... )

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

Супер інтерв’ю. Такі матеріали надихають як дітей, так і дорослих.

Софія та її батьки — великі молодці, справжня гордість України.

Дякую за чудове інтерв’ю! Надзвичайно талановита, розумна і працьовита людина — будь-якій ІТ-компанії світу дуже пощастило б мати таку серед працівників. Взагалі радісно бачити таких дівчат серед молодого покоління в Україні — додає оптимізму і віри в майбутнє країни. 😊

В 20 в синьоры, в 21 будет архитектор

У Лены Денисенко получилось, чем София хуже?)

Молодец! Насчет того, что делать в будущем, то очень советую попробовать internship в больших компаниях как Facebook или Google. Где можно попробовать себя 3 месяца и посмотреть нравится ли работа такого формата и заодно пожить в другой стране (знаю что везут в США и Англию).

Сам учавствовал в олимпиадах и знаю много людей которые пропустили свой шанс получить практику в университете. Так что карьера складывалась немного сложнее.

София (и другие студенты победители олимпиад), если интересны выходы на Facebook или Google не стесняйтесь обращаться, был бы рад помочь. Я лично работал с несколькими интернами и смогу ответить на вопросы если есть.
www.linkedin.com/in/dtarasiuk

Дмитрий, уверен что уже шутили но Assistant TO Regional Manager

А если ещё точнее — Assistant to the Regional Manager :D

У них просто недавно был фейковый пожар в офисе, все визитки сгорели

Подписаться на комментарии