HSE Продвинутый C++ 2021
390 subscribers
1 photo
2 files
32 links
Download Telegram
Мы выложили новое большое домашнее задание.

Это jpeg-decoder.

В нём 6 пунктов, максимум 12.5 баллов. Мы думаем, что пункт progressive самый тяжелый (и оценивается в 2.5), прочитайте все остальные. Также в этом задании есть элемент закрытых тестов -- это fuzzing тестирование. Вы можете это тестирование запускать у себя, в этом плане оно открытое.

Дедлайн 26 декабря 23:59:59. Ночью 27 декабря мы запустим все решения друг против друга. Все упавшие решения не получат баллов, которые мы указали на пункт fuzz.

Все детали на лекциях и семинарах, но вы можете начинать читать материалы, указанные в условии.

Мы можем немного менять тесты или добавить пару жпегов, всё как обычно.

В задаче также есть пасхалка, напишите лектору или семинаристу, если вы думаете, что нашли её. Первым 10 людям мы поставим +1 балл за это дз, если вы сможете её объяснить.

Удачи!
Задач больше не будет на курсе. Делайте большое дз
Мы посмотрели на ваши посылки в jpeg-decoder/fftw. Два момента:

1) Вам нужно использовать библиотеку FFTW. Не пишите вычисления по формуле руками, это приведет вас к проблемам с точностью, которые будет сложно обнаружить.

Мы забанили функции cos и acos, 4 сданных решения перетестировали. Это не универсальная проверка, но не пытайтесь ее обойти, пожалуйста.

2) Переиспользуйте план, который подготовила библиотека FFTW, между вызовами DctCalculator::Inverse(), не создавайте его каждый раз заново -- это неэффективно.

В ближайшее время мы добавим бенчмарк, проверяющий это.
Мы починили подзадачу faster в jpeg-decoder и слегка ослабили условие на перформанс (теперь надо уложиться в 8 секунд, а не в 6)
Напоминаем, что списывание строго запрещено на курсе. И карается снятием всей недели при обнаружении, а также запиской в учебный офис.

Мы в скором времени проверим все решения на списывание, в том числе и из открытых источников.

Если вам есть что рассказать до того, как мы обнаружили вас, вы можете написать лично лектору, и мы снимем только половину недели.

За курс мы нашли уже 16 случаев у 10 студентов. При обнаружении списывания у двух студентов, мы руками проверяем все остальные задачи. У некоторых студентов обнулились уже 3 недели.
В эту субботу последняя лекция по C++, поговорим про перф C++, место C++ в мире и что нас ждёт в будущем
28 декабря в 18:00 MSK посиделки со всем препод. составом по курсу С++ (или практически всем)

Начнём, наверное, с РС и каких-то баек, но задать вопросы можно любые

Вопросы: https://forms.gle/rBLV6DpZStFW4x1RA
Ссылка: https://zoom.us/j/92427240857?pwd=L3UyVnFRRHh1N2RzVmVZZUFabXhSQT09
Сегодня после 23:59 за все ноль
Фаззинг huffman и fftw прошли у всех, кто сдал, про baseline мы скажем с утра
HSE Продвинутый C++ 2021
Фаззинг huffman и fftw прошли у всех, кто сдал, про baseline мы скажем с утра
По состоянию на 22:48 London time живы только 5 решений

hse-Abramovich-Vladislav-ohhimarkk
hse-Semyon-Yentsov-swalrus
hse-Tagir-Khamitov-tagirkhamitov
hse-Tim-Gritsaev-timgri93
hse-Mikhail-Gusev-mcnckc
4 решения

Abramovich Vladislav выбывает из-за OOM инпута в 1036 байт
3 решения

Тимофей Грицаев выбывает из-за деления на ноль в решении faster
2 решения

Тагир Хамитов выбывает из-за переполнения

/usr/local/google/home/danilak/cpp-advanced-hse/tasks/jpeg-decoder/decoder.cpp:384:16: runtime error: signed integer overflow: 2027378152 * 2 cannot be represented in type 'int'
SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior /usr/local/google/home/danilak/cpp-advanced-hse/tasks/jpeg-decoder/decoder.cpp:384:16 in
MS: 1 ChangeBinInt-; base unit: 1b6c40f01c53fa64e2dee54ade2c9e24fe0dd057
Осталось последнее решение

Семен Енцов выбывает из-за проблем referencов

/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/stl_vector.h:1046:9: runtime error: reference binding to null pointer of type 'std::vector<unsigned char, std::allocator<unsigned char>>'
Итоги фаззинга:

Если вы сдали Huffman и FFTW, то мы вам засчитываем фаззинг.

По jpeg decoder полностью фаззинг выдержало только решение Михаила Гусева.

Тем не менее, Тимофей Грицаев в baseline тоже смог выдержать тестирование.

Поэтому мы решили дать двум студентам баллы.

Остальные 11 решений честно упали. Увы. Если интересно где и как, напишите мне.
C++.pdf
121.2 KB
https://docs.google.com/spreadsheets/d/1PhZm4DRdgIDcTOivNZbEVSyDDnY4DcI1o8wTYbWhm74/edit#gid=1552933981

Финал С++ (в той же табличке, что и missing, да). Фаззинг и бонусы проставили

В прикрепленном pdf с ведомостью, которую я отошлю через час в учебный офис
С++-signed.pdf
178.2 KB
Совсем финал

Исправили Лапокину Данилу и Сазонову Михаилу оценки

Увидимся завтра в 6 часов!
HSE Продвинутый C++ 2021
Формат пересдачи по C++: Мы разрешим дорешать все задачи (мелкие и большие), но максимум от баллов каждой задачи можно будет получить 60%. Это идёт поверх заработанных баллов. Также со всеми, кто пересдает, мы поговорим лично по решенным задачам и можем…
Если что, напоминаю формат пересдачи, можно досдавать задачи, больше ничего нельзя. Ещё опционально попросим защитить задачи

Если не хватит баллов, это на комиссию

На комиссии мы проведем Quiz, поговорим, попросим написать кода и решим комиссией что ставить.
Всем привет!

Этой осенью будет вторая итерация нашего курса по продвинутому C++, вести будут семинаристы первой итерации.
В этот раз мы хотим нанять себе в помощь ассистентов, в чьи задачи будет входить консультация студентов в чатах и, главное, в личных сообщениях (поток вопросов там не меньше).

От желающих требуется:
- отличная оценка за наш курс (но если у вас меньше 8, то можете отозваться и написать, почему вас надо взять)
- умение нетоксично общаться со студентами, которые менее компетентны, чем вы
- готовность к тому, что вас не сразу поймут и нужно будет пояснять одну вещь разными способами
- готовность быть на связи в разумные часы. Конечно, не обязательно отвечать на все вопросы моментально, но и долго игнорировать вопросы – плохо

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

Будет плюсом опыт ассистирования на других курсах — укажите его, если он есть. Также укажите людей, которые могут вас порекомендовать, мы будем на это смотреть. Будьте готовы, что мы можем написать вам в личку с дополнительными вопросами.

Записывайтесь в форму. Ждем ваших заявок!