Тёмный

Олимпиадное программирование: что такое и с чего начать? 

Хочу в STEM
Подписаться 1,9 тыс.
Просмотров 25 тыс.
50% 1

Это второе видео из серии про олимпиадное программирование
В нем мы с тобой рассмотрим одну из задачек, поболтаем что тебе нужно, чтобы ее решить и много чего еще - welcome:)
Курс по программированию: stepik.org/cou...
Курс по алгоритмам: stepik.org/cou...
Книга: "Алгоритмы: построение и анализ"
Задачка из видео: leetcode.com/p...
Группа вк: public2...

Опубликовано:

 

2 окт 2024

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 59   
@yungeji
@yungeji Год назад
С чего начать изучение если осталось 5 часов
@lolikice8283
@lolikice8283 Год назад
Ахраахпап всош видимо по инфе, школьный тур это база
@lolikice8283
@lolikice8283 Год назад
Я хз что туда учить, ничего наверное
@andd3dfx
@andd3dfx 3 месяца назад
Закрыть игру. Выспаться))
@yungeji
@yungeji 3 месяца назад
@@andd3dfx мне кажется ты немного поздно, но я поступил куда хотел
@Pigeon-o5l
@Pigeon-o5l Месяц назад
@@yungeji а куда поступил?
@PrizeFrom
@PrizeFrom Год назад
Я пытаюсь понять что она говорит,но отвлекаюсь на её глаза))))Перематываю и снова смотрю.Пытаюсь не смотреть на глаза,а на задний фон,чтобы понять о чем она говорит,но периферическое зрение всё равно видит красоту и симметричность её лица.Не смотрю вообще на видео и пытаюсь услышать о чем она говорит,но слышу только её приятный голос.
@АлексейНикто-о4р
Комментарий не в тему, но напишу что вы красивая
@КаналЭйса-ь8в
@КаналЭйса-ь8в 2 года назад
Решено на кф - 512 задач , на лит коде -120 задач , при этом сейчас на кф рейт всего лишь 1436, хотя пару лет назад был бы кмс или экспертом , бред то что начали давать усложненные по сравнению с прошлыми годами на кф во втором диве .....
@QTe-zh8pb
@QTe-zh8pb 2 года назад
А что такое кф?
@timursyrma
@timursyrma 2 года назад
@@QTe-zh8pb codeforces.com
@АлекСневар
@АлекСневар 2 года назад
@@QTe-zh8pb codeforces
@diyarhalone1262
@diyarhalone1262 2 года назад
Буду занудой, знаю что смысл видео не в этом, но можно реализовать более шустрый алгоритм, который работает за O(nlogn), с предварительной сортировкой за столько же, то есть мы проходим по всем элементам массива, и пытаемся бинарный поиском найти элемент равный sum - arr[i], причём ищем среди j, где 0
@semninrussia
@semninrussia Год назад
@Михаил Фаиров это фигово по памяти
@semninrussia
@semninrussia Год назад
Можно использовать метод 2х указателей. Изначально они буду равны левому и правому элементам, но после сравнения их с искомой сумой, смещать левый указатель, если нынешняя больше искомой, и смещать правый, если меньше (так как это отсортированный массив, то это будет работать. Сложность алгоритма в худшем случае O(N)
@jet4904
@jet4904 10 месяцев назад
я буду большей занудой, берешь хаш сет, и пробегаешся по масииву сравнивая есть ли в сете arr[i] - target если нет то добавляй его в сет и так получится 0(n) по памяти 0(n), ах ну да если все таки встретил arr[i] - target, то возращаешь i и то что нашел сет
@mychannel-te5ke
@mychannel-te5ke 3 года назад
Спортивное программирование - смысл моей жизни!
@andd3dfx
@andd3dfx 3 месяца назад
Киберспортсмен что-ли?)
@WEBSTART-LIVE
@WEBSTART-LIVE 2 года назад
Good video. Thanks!
@ffunktor
@ffunktor 2 года назад
"Второе, работал быстро и не использовал много памяти". С этим не соглашусь, всё зависит от ситуации. В каких-то более понятный код предпочтительней быстрой работы. В каких-то для быстрой работы наоборот пишут такие алгоритмы, которые используют много памяти.
@HochuVStem
@HochuVStem 2 года назад
Да, но в этом видео я рассказываю исключительно про спортивное программирование. Конечно порой понятный код предпочтительнее или, если Вы заранее знаете размер данных и они, допустим, не супер большие, то порой оптимальнее выбрать алгоритм, который асимптотически работает медленнее. Но повторюсь, это видео про олимпиадное программирование, где Вам в задаче сразу пишут все ограничения. Решение, которое работает медленнее(даже если в реальности бы Вы возможно для конкретной задачи его и не выбрали) просто не зайдет
@Zhussipru
@Zhussipru Год назад
Отличное видео! Я уже год участвую на олимпиадах. Сейчас я хочу помочь другим в этой сфере, можете пожалуйста поддержать если не сложно
@andd3dfx
@andd3dfx 3 месяца назад
Зачем в таком возрасте Вы пишете на C++? Что-то случилось?
@HochuVStem
@HochuVStem 3 месяца назад
Да, я училась в универе… Но теперь со мной все хорошо! Я пишу на sql + python и ни о чем е жалею:))
@a.osethkin55
@a.osethkin55 2 года назад
мало информации. решение вроде бы простое - проходка от а1+а2+...аN + a2+...aN+... - т.е. как ни крути типа o(N^2). Можно в рекурсию завернуть, но оптимальнее от этого не будет
@HochuVStem
@HochuVStem 2 года назад
В этом видео у меня не было задачи показать оптимальное решение. Оба мои решения в этом видео - это O(n^2) как ни крути. Если Вы хотите решить эту задачку за линию (спойлер - это возможно:), то один из вариантов воспользоваться хэш таблицами. Я, кстати, буквально пару дней назад выставила видео на эту тему: ru-vid.com/video/%D0%B2%D0%B8%D0%B4%D0%B5%D0%BE-zDezpE2TTWE.html
@joly3122
@joly3122 2 года назад
@@HochuVStem Также очень хвалят книгу "Грокаем Алгоритмы". Сам хотел бы почитать
@joly3122
@joly3122 2 года назад
@@HochuVStem Получается мы записываем все значения из массива в HashMap и дальше проходим по каждому и смотрим есть ли элемент с ключом (нужное число) - (текущее число) и выводим нужные индексы?
@joly3122
@joly3122 2 года назад
@@HochuVStem Кстати есть простая, но крутая задача. Дан массив и в нём все числа, кроме одного имеют свою пару. Надо назвать это число (есть решение с линейной асимптотикой и без использования лишней памяти)
@HochuVStem
@HochuVStem 2 года назад
@@joly3122 Я не очень поняла что ты хранишь в hashMap, но +- оно, да. На самом деле ты можешь ограничиться даже 1 проходом по массиву, если записывать пару (key: число, value: индекс), то перед тем как вставлять новое число(current) - мы смотрим нет ли в таблице числа, которое дополняло бы current до target. Ну и если нашли - мы можем сразу вывести индексы и выходим
@MCLoveKherson
@MCLoveKherson 2 года назад
а можно сылку на задачу?
@HochuVStem
@HochuVStem 2 года назад
Добрый день! Я добавила ссылку в описание:)
@timurboltaev8688
@timurboltaev8688 2 года назад
Отличное видео, спасибо!
@HochuVStem
@HochuVStem 2 года назад
Ура, очень рада, что Вам понравилось:)
@user-do5ru7jv1w
@user-do5ru7jv1w 3 года назад
Спасибо.Очень интересно😍
@HochuVStem
@HochuVStem 3 года назад
Ура! Очень рада, что понравилось:)
@НикитаШестериков-р6ы
@@HochuVStem Извините, а почему в начале нельзя сразу отсечь числа большие или равные числу (тогда сложность алгоритма станет меньше)?
@HochuVStem
@HochuVStem 2 года назад
@@НикитаШестериков-р6ы в массиве могут быть отрицательные числа
@nuraymaskatkyzy3033
@nuraymaskatkyzy3033 2 года назад
А какой язык программирования вы бы посоветовали именно для спортивного программирования?
@HochuVStem
@HochuVStem 2 года назад
Это классный вопрос, я бы посоветовала либо C++, либо Java(я пишу(писала по большей части) обычно на плюсах), тут уже что Вам ближе
@nuraymaskatkyzy3033
@nuraymaskatkyzy3033 2 года назад
@@HochuVStem Спасибо большое за ответ) Успехов вам в ваших начинаниях!
@skiAmaura
@skiAmaura 2 года назад
Обязательно учиться в вузах, чтобы принимать участие в топовых соревнованиях?
@HochuVStem
@HochuVStem 2 года назад
В топовых?
@skiAmaura
@skiAmaura 2 года назад
@@HochuVStem Я имел в виду, обязательно ли быть студентом вуза, чтобы участвовать в ICPC, например
@HochuVStem
@HochuVStem 2 года назад
@@skiAmaura ICPC - да, но все не заканчивается одним ICPC:)
@nuv7721
@nuv7721 Год назад
об этом узнал после отчислении😅 и теперь планирую вернуться в вуз. Какие олимпиады знаешь?
@rainylofi3532
@rainylofi3532 3 года назад
Нормик. Но кстати мне каж это как в шахматах, тупа с рождения надо учиться, чтобы побеждать. В 20+ зачем начинать уже
@HochuVStem
@HochuVStem 3 года назад
Это очень зависит от вашей мотивировки. Конечно победителем ICPC(считается самой крутой международной олимпиадой по проге) скорее всего Вы не станете. Но за пару лет натренироваться неплохо писать контесты на codeforces, чтобы занимать довольно высокие места, более чем реально. Если вдруг Вам интересно - я снимала целое видео про то, зачем нужна олимп прога ru-vid.com/video/%D0%B2%D0%B8%D0%B4%D0%B5%D0%BE-RTQVHMC0ePI.html и после где можно порешать задачки(там про codeforces) ru-vid.com/video/%D0%B2%D0%B8%D0%B4%D0%B5%D0%BE-yygYw26kbL4.html
@rainylofi3532
@rainylofi3532 3 года назад
@@HochuVStem Круто, спасибо. Сними, пожалуйста, видео о том, как самостоятельно учить computer science, какие нибудь ресурсы там, книжки, step by step гайдик😊. А то я в горном учусь, но хочу заниматься программированием
@HochuVStem
@HochuVStem 3 года назад
Хорошая идея, нужно подумать над этим, я обязательно сниму что-то такое! Но для начала - очень советую курс по питону, про который я в этом видео говорила. Если до этого не прогал - то он неплохой, чтобы прощупать самые азы(из разряда узнать что такое цикл for, самые-самые базовые вещи какие-то). Ну и можно, когда познакомишься с базовыми конструкциями - пойти попрактиковаться в секцию easy на LeetCode(я рассказывала в одном из тех видео, которые скинула, что это такое), чтобы просто чутка набить руку писать какие-то простые вещи, так как в курсе задачек на практику какое-то конечное число
@luckytima2315
@luckytima2315 2 года назад
@@rainylofi3532 CS иногда выпускают курсики закрытые для тех кто хочет поступать к ним, в кратце надо на линал налегать ну и алгосы.
Далее
Как снимали мой клип POLI - Котик
00:37
Вопрос Ребром - Серго
43:16
Просмотров 1,4 млн
Все о принципах SOLID
16:07
Просмотров 25 тыс.
Как снимали мой клип POLI - Котик
00:37