Викилоги

Материал из DISCOPAL
Перейти к: навигация, поиск
Поиск по заметкам викилога
 

2022-04-28

Так делать не надо:

  • Профилирование
python -m cProfile -s cumulative mycode.py < bigcase.txt  >profile.log
  • Отладка в VSCode
       {
           "name": "mycode",
           "type": "python",
           "request": "launch",
           "program": "mycode.py",
           "console": "integratedTerminal",
           "justMyCode": true,
           "args": ["<", "mycode.txt"]
       },



  • Розыгрыш «хор»-зачета за баллы.
  • Двойной выигрыш → «отл»


Если что не получилось — посмотрите, там дальше ссылка с видео



Поразбираем:

2022-04-21

Так делать не надо:


Поразбираем:


Розыгрыш «хор»-зачета за баллы.



Если что не получилось — посмотрите, там дальше ссылка с видео


  • Категория:На_проверку
  • «Отл» за 5 задач из Spoj/Codechef (не LeetCode) + одна теоретическая
  • «Хор» за 3 задачи из Spoj/Codechef (не LeetCode).



2022-04-14

2022-04-07 2022-04-07 08-06-39 image0.png

Если что не получилось — посмотрите, там дальше ссылка с видео


  • Категория:На_проверку
  • «Отл» за 5 задач из Spoj/Codechef (не LeetCode) + одна теоретическая
  • «Хор» за 3 задачи из Spoj/Codechef (не LeetCode).


Кому скучно:

Поразбираем:


2022-04-07

2022-04-07 2022-04-07 08-06-39 image0.png

Если что не получилось — посмотрите, там дальше ссылка с видео



Кому скучно:

Поразбираем:

2022-03-31 Feedback

Решения задач — ищем решения именно на Python! «4 из 6» колонок чтобы были накрыты (некоторые задачи могут накрыть две колонки — две темы.

2022-03-31 Feedback 2022-03-31 08-19-37 image0.png

  • «Отл» за 3 задачи из Spoj/Codechef (не LeetCode).
    • До сих пор открыто после будет за 4 задачи.

Кому скучно:

Поразбираем:

2022-03-24 Feedback

Решения задач — так держать!


«отл» автоматом для тех, кому не лень

  • «Отл-автоматом» — теперь, при условии хотя бы одной теорзадачи.
  • Эта неделя → «Отл» за 3 задачи из Spoj/Codechef.

2021-12-20 Feedback по jupyter-ноутбукам

2021-12-20 Feedback по jupyter-ноутбукам 2021-12-20 17-13-53 image0.png

Просмотрел несколько видеопрезентаций по юпитер-ноутбукам.

  • Часто встречается паттерн «свалка кода сбоку» в рядом лежащих питон-файлах, в ноутбуке только интерфейс к какому-нибудь простому интерфейсу. Это конечно, не то, что хотелось бы.
    • Почему это плохо?
    • Такой ноутбук «не работает» как передача знаний, он бесполезен, он не лучше, чем кусок кода, ибо все равно
      • разбирающемуся придется реинженирить код, его функциональные связи, что там и что означает…
      • такой ноутбук не «расшарить» в colab.research.google.com или cocalc.com (там всегда плохо на тему шаринга рядом лежащих файлов).
      • он не работает как презентация-пояснение-живой плейграунд («а что если тут поменять XXX»?).
  • Посмотрите реально примеры и разбор из Blog:Advanced Algorithms/2021-12-01 Как делать лучше jupyter по статьям
    • Последовательно вводите понятия, каждая питон функция в отдельной ячейке, в ячейке перед ней — описание, в ячейке после нее — примеры вызова с характерными данными.
    • Не бойтесь, если будет длинно — никогда не жалейте места для лишних слайдов или ячеек в ноутбуках — в зависимости от аудитории, слайды-ячейки можно пропустить, зато гарантирует, что хоть кто-то разберется в теме (включая вас, такой рефакторинг для научного ресерча — самый эффективный способ найти проблему).
  • Вот пример неплохого доклада вашего однокурсника → https://youtu.be/XeZTpQWTDUU (ноутбук)
    • При записи доклада, разумно использовать какой-нибудь экранный аннотатор (рисовалку), на худой конец, поставьте курсор побольше, это поможет.
    • В идеале — добавляйте вебкамеру и научится хромакею. Учитывая, что защита в этом году будет скорее всего дистанционная — хороший повод потренироваться записывать себя, чтобы потом вырезать неудачное, остальное ускорить, и потом прокрутить на защите идеально выведенный по таймлимиту ролик защиты (на вопросы подключится живьем).
  • По срокам — я выторговал в деканате до 25го декабря, но лучше не задерживать до последнего момента.

StasFomin 13:56, 20 декабря 2021 (UTC)

2021-12-01 Как делать лучше jupyter по статьям

2021-11-15 Research Block

Концептуально:

  • Свежие статьи на относительно знакомые темы
  • Надо «воспроизвести»
  • Юпитер-ноутбук или SageWorksheet или …
  • Наш сервис — https://discopal-lab.0x1.tv
    • Почему наш?
    • https://colab.research.google.com — хорошая альтернатива, но
    • все теряется, сложно собрать все времесте.
    • только ядро Python (нет R/Sage/… возможно у нас будет Coq и т.п.)
    • Почему не jupyterlab или jupyterhub — нет коллаборации.
2021-11-15 Research Block 2021-11-24 12-20-26 image0.png
    • Почему не cocalc.com — стал хотеть денех.
2021-11-15 Research Block 2021-11-24 12-19-13 image0.png
  • Введение будет отдельно
    • Но разобраться что есть юпитер-ноутбук можно и самостоятельно
  • Доступ к https://discopal-lab.0x1.tv (логин/емейл-пароль) получите лично (почта или тг)
    • Как только пройдете более простые квесты (по задачам и тестам).
2021-10-15 Practical Block 2021-11-03 14-22-47 image0.png


  • Полностью «переписывать статью не надо»
    • Разобраться в введении
    • Воспроизвести максимально декомпозировав, основной алгоритм.
    • Доказательства не нужны.
    • «Модель»-«Алгоритм»
  • Если что не получается — пингуйте.
    • Можно конечно
      • Работать с локальным Jupyter
      • Использовать colab
      • Но регулярно перегружайте в discopal-lab — чтобы я видел прогресс, и мог комментировать-корректировать.
  • Как что получится.
    • Научитесь пользоваться OBS — (см. также [1]), попробуйте использовать экранное рисование ([2]) и сделать это живым и доступным.
    • Запишите видео-презентацию и забросьте мне (unlisted youtube, файлохранилища…)
  • Срок — первая группа — давайте попробуем до 5 декабря.

2021-11-21 Feedback

©

  • Если проблемы в решении → исправляем и снова «на проверку». (1)
2021-11-21 Feedback 2021-11-24 19-12-10 image0.png
2021-11-21 Feedback 2021-11-25 06-38-20 image0.png
  • Не гонитесь за количеством литкодов — это на «уд», база.
    • Выгнал из резервированных кому хватит!
2021-11-21 Feedback 2021-11-25 05-47-01 image0.png
2021-11-21 Feedback 2021-11-25 05-45-27 image0.png
2021-11-21 Feedback 2021-11-25 05-46-17 image0.png
  • Никого левого не пускаем! — не зовите.
  • Совсем плохо с решением задач — ну гуглите решения, или даже смотрите ютуб-каналы с разбором.


2021-11-21 Feedback 2021-11-25 12-06-48 image0.png
2021-11-21 Feedback 2021-11-25 12-13-35 image0.png
    • Вариант без «теории»
    • Неделя «отл» за два «не LeetCode»-решения (Spoj/CodeChef). → до 22.11 включительно. (ну при этом надо чтобы было 4х-задачное покрытие тем, как обычно». А 23го подведем итоги по задачам (чтобы больше их не решать), откинем и удачливых, и тех, кто не осилил, и будет очередной созвон по теории.
      • Как отлаживать без тестов?
      • Написать генератор
      • Проверить существующими решениями на других языках

2021-10-15 Practical Block

2021-10-15 Practical Block 2021-11-03 14-27-56 image0.png

Концептуально:

  • Win-Win!
  • Абсолютно практические задачи с собеседований.
    • LeetCode
    • CodeChef
    • SpojCode
    • Сотни решенных и нерешенных
  • Условно поделены на «Dynamic Programming», «Greedy», «Random», «Sorting», «Numbers»
  • Нужно быть залогиненным
    • Скрыто из интернета
  • Изучайте Решенные практические задачи (Их там 1396)
  • Надо решить 4 задачи из разных разделов.
    • Или взять бонусную задачу — «отл» автоматом.
2021-10-15 Practical Block 2021-11-03 15-02-30 image0.png

2021-10-15 Practical Block 2021-11-03 14-24-09 image0.png

(Их там 151)

    • Не нужно брать десятки задач на себя сразу, и освобождайте то, что не получается.
  • Решенное
    • Ну смотрите, как оформлено в прошлые годы
    • Решение на подстранице вашей личной страницы
      • Вики-ссылка на задачу
      • Python-код в «<source lang="python"></source>»
      • Метка «{{checkme}}», когда решите.
2021-10-15 Practical Block 2021-11-03 14-22-47 image0.png

(Их там 22)


  • Как легче решать Python
    • Загрузка данных
    • Выбирайте более свежий CPython или PyPy.

2021-09-03 Анонс «Эффективных алгоритмов-2021»

Кратко, что будет, чего не будет и что ждать.

  • Лекций — не будет. Это бред и бессмыслица, особенно при дистанционке. Созвоны будут при небходимости, в формате семинара, может индивидуальные.
  • Будет путешествие-квест, с разными активностями.
  • Берем только практические вещи — алгоритмы для разных задач, особенно NP-полных.
  • Условно будет три блока
    • Теоретический — прочитать темы, посмотреть записи лекций, пройти тестирование, возможно решить некоторые теорзадачи.
    • Тут будет первый отсев — если не проходите тесты (отсеим, скажем, 25% нижних), то «досвидания».
      • Не рекламируйте этот курс — чем меньше народу, тем будет лучше. Я заинтересован сократить численность всеми способами. Особенно нафиг я посылаю всех, кто пытается запрыгнуть в курс в середине семестра и позже. Без шансов. Когда-то прогибался в виде исключения, сейчас не буду.
    • Легкий практический — решение нескольки задач, даваемых на собеседованиях в IT-компаниях, типа LeetCoding, SpojCoding, CodeChefing и т.п.
    • Тут будет второй отсев — но можно будет тут свалить, получив «уд» — кому нужно время, и не очень все это интересно.
    • Теор-практический — взять некоторую тему из заданных (свежая статья, я отберу), и сделать ее разбор-презентацию-реализацию в каком-нибудь jupyter или cocalc-ноутбуке (там будет видно). Тут возможно будет и индивидуальная работа и может тренировка презентейшн скиллс, что полезно для ваших дипломов (сколько я смотрел защит, все ужасно).

Ну остальные новости будут в группе, если что. Вопросы тоже там или напрямую.

Как зарегистрироваться — написано на основной странице курса, где все и будет https://discopal.ispras.ru/Advanced-algorithms

Регистраций открыта до 15 октября.

Подумайте еще раз — надо ли вам это. «Халявы», «Лекций», «Оценок за удаленную посещаемость» тут не будет. Даже «уд. нахаляву». Посмотрите, вокруг полно интересных курсов по выбору.


2021-05-20

  • Большой тест в подарок.
  • Кучу тем Курс лекций «Сложность алгоритмов» (ИСПРАН, 3 курс МФТИ)#не берем в этом году
  • «A»-фактор поделен на 5.
  • Больше баллов за самостоятельную работу.
  • Continuous Integration — оценки выставляются непрерывно до середины июня. Или нет?
    • Похоже выставляем скрочно, до конца пятницы.
    • С 15:00 до 17:00 меня можно найти в ИСПРАН, 301 комнате, и попробовать сдать лично (кому не хватает баллов и т.п.).
  • Проблемы с оформлением:
  • Как бороться с NZEC с задачами.
    • Пишите генератор тестов.
    • Сравнивайте с имеющимися решениями на C
  • Непитоновые задачи засчитывались — Участник:Srip09/USelection
  • Много совсем не проходит тесты — 1, 2


©
  • Новый блок задач (отдельная графа в суммировании)
  • Сегодня и завтра даются баллы за решения с нарушением TL за 3 балла!, разумеется, если запускать в PyPy режиме — Почти как полное решение, хотя тут даже не факт, что пройдет нетривиальные тесты. Пользуйтесь!


Распорядок передачи знаний на этот период.webp


2021-03-12

[1]


2021-03-11

, где — очки за задачу. Т.е. выгодно решить 1-2 задачи в каждой из тем, вместо того, чтобы выгрызать только одну тему, насобачившись решать что-то одно.

2020-12-22 Feedback

2020-12-22 Feedback 2020-12-23 10-53-41 image0.png
Понижены
  • Стартовые штрафы ленивым
  • Границы перцентилей
  • «Отлично» в два раза меньше «Лидеров»
Numb3rs
  • 18/30 финишировали с оценкой
  • Только в SpojCoding
    • 39 нерешенных задач
    • 147 решенных и не питонизированных
    • А еще LeetCoding
    • {{checkme}}

  • Давайте отгружайте активней!
  • Можно срубать «чужие блоки», если старше 5 дней.
    • Бывают столкновения правок [1]
  • Quest-D — на самом деле легкий способ улучшить оценку на балл, не пренебрегайте.
    • User:Easik — c самых больших штрафов, до «отл»

2020-12-15 Feedback

2020-12-15 Feedback 2020-12-17 17-35-10 image0.png
  • Решение каждой задачи на отдельной странице, а не как [1]
  • 1, 2, 3, 4, 5, … — проверяйте перед записью!
  • «Time Limit Exceeded» — если не питон, то скорее всего алгоритм сильно не оптимален (квадрат вместо nlogn, экспонента вместо полинома и т.п.).
  • «12» — списывать и передавать решения неспортивно!
  • Штраф для «раздолбаев» понижен — включайтесь!
  • Новая возможность — написать питон решение к задачам решенным не на Python

2020-12-15 Feedback 2020-12-16 16-54-15 image0.png

    • Иногда это может быть сложно — понять длинное решение на C или Rust
      • Но в целом, полезный навык
      • Можно использовать для тестирования своего решения
      • по 2 балла за задачу
      • Таких много, несколько десятков.
      • Можно даже если это вы сами
      • Если не укладываетесь по времени — пробуйте PyPy
      • Местами есть проблемы Участник:Andriygav/BAT3
  • Привлечь внимание {{checkme}} (новое решение, исправление старого, и т.п.)

  • Для тех, кому надоели задачи и хочеться чуть лекций
    • Quest-D — три балла отдельно.
  • Сроки — скажем до 29 декабря.
    • Может можно будет продолжить, не уверен.
    • «запланированные даты экзамена» — игнорируйте.
  • Оптимально — баланс по темам!
  • Leet/Spoj
    • Хороший питон — numpy
    • Leetcoding — мягче, показывает, где фейл
    • Несравнимо с CodeForces — издевательство, все в ведро…
  • В целом — мы делаем полезное!
    • Можете рекламировать себя («подпишись на мой гитхаб»).
  • Можно добавлять новонайденные задачи с этих ресурсов в соответствующие разделы.
  • Насколько часто проверяю?
    • Служебная:Свежие_правки
    • Стараюсь раз в несколько дней «начать проверочный обход»
    • Убираю «Блокирующие метки» старше 5 дней!
  • Начиная со следующей недели можно фиксировать отметки!

2020-12-01 Feedback

2020-12-01 Feedback 2020-12-02 15-13-15 image0.png

Проблемы

  • Зависания и «блокировки» задач
    • Это четыре тильды, не три.
    • Теперь 5 дней.
    • «Блокировку» можно стирать после решения.
  • Красивее код
    • Он не только для задачи, но и для ваших коллег.
    • тег «code-python», «code-cpp»
    • Ссылку на исходную задачу
    • Лишних категорий не надо.

Оценки

  • Участник:Phokov — молодец.
    • Порадуем трех первых сразу!
    • Лучше понадкусывать везде!
  • Автоматического «уд» нет, обязанности «принимать» — тоже нет.
    • Курсов по выбору много.
  • A_index
  • Квест по машинлернингу.
    • 0x1-classification — 20 баллов за разумное, 12 — за минимально вменяемое. Наверное можно даже троих параллельно.

2020-05-19 Дистанционный зачет по «Эффективным алгоритмам»


Всем привет. Пора выходить на финишную прямую в весеннем курсе 2020.

Как обычно, в курсе учитывалась разнородная активность:

  • реальные занятия (до карантина), активность на оффлайн занятии, прохождение там же тестов,
  • дистанционная работа:


Тезисы:

  • Активность последний месяц была не очень высока (хотя возможностей была масса).
    • Неполенившиеся уже получили «отл»
  • «Win-Win» — оценка справедливо соответствуюет трудозатратам.
  • Никакого каргокульта («зачетных дней») — все распределенное и асинхронное.
  • Есть еще время (минимум неделя).
  • Оставшиеся квесты:

    • У кого совсем плохо с кодом — три раза будут проведены тесты — они будут появятся сверху на странице курса.
      • Окна:
        • Пятница, 22 мая, 13:00-13:30
        • Суббота, 23 мая, 14:00-14:30
        • Понедельник, 25 мая, 15:00-15:30
        • Вторник, 26 мая, 22:00-22:30
  • У кого «хор», но очень хочется улучшить оценку до «отл» — свяжитесь со мной, есть квест (смотреть и комментировать околонаучные доклады), как можно улучшить оффлайн (что-то типа Quest-O).


Предновогодний цейтнот преподавателя.jpg


Выход на финишную прямую в 2019

Science-race-01.jpg
Update
  • Оценки автоматом проставлены.
    • Сейчас те, у кого не хватает на «хор», могут (еще три дня), добрать до баллов решая LeetCoding. Все, этот квест закрыт.
    • У кого «хор», но очень хочется улучшить оценку до «отл» — свяжитесь со мной, есть квест (смотреть и комментировать околонаучные доклады), как можно улучшить оффлайн.
    • Экзамен для оставшихся — в последнюю неделю, в 301 ИСПРАН, отдельно сделаем регистрацию.

Прием экзамена, 13:00, ИСПРАН, 301 аудитория.

Записывайтесь на удобную дату.

2019-12-23, понедельник0
0%
2019-12-24, вторник0
0%
2019-12-25, среда1
100%
Vkozin
2019-12-26, четверг0
0%

Вы должны войти в систему, чтобы участвовать в этом голосовании.

Процесс сдачи будет включать:



Всем привет.

Пора выходить на финишную прямую в курсе 2019.

Как обычно, в курсе учитывалась разнородная активность — активность на оффлайн занятии, прохождение там же тестов, в качестве домашней работы предлагались квесты LeetCoding и подготовка докладов по Jupyterization, плюс для некоторых, подготовка докладов по их личным исследовательским темам.

С подготовкой докладов ( в этом году вышло не так активно, как ожидалось, и в целом, учитывая что в 6 декабря занятия не будет[1], у нас остается три онлайн занятия, после которых по результатам баллов, будет предложены оценки автоматом на «хорошо» и «отлично».

Хорошие новости — скорее всего, в этом году планку немного снизим (планирую отсечку по персентилям 0.45 и 0.7).


Ну и для тех, кто боится (или они не получались) задач на LeetCoding — я отсыпал большую пачку задач по жадными алгоритмам и графам со сложностью «Medium» (в разделах Medium). Они будут чуть дешевле, но даже решая только их можно набрать на автомат.

Опция обычного экзамена тоже есть, она будет наверное в последнюю неделю, 25-27 декабря, в ИСПРАН, в 301 аудитории, со временем определимся позже.


Предновогодний цейтнот преподавателя.jpg
  1. Приглашаем всех на бесплатную конференцию https://www.isprasopen.ru/, в здании РАН, хорошая тусовка и еда, кроме докладов.

Управление e-mail подписками на блоги и комментарии