Школа 21, Бассейн, день десятый и одиннадцатый

tl;dr rush01 – 80/100, matchnmatch – 0/100, day10 – Makefile и указатели на функции, day11 – список мне разверни, отсортируй, вставь, выбери и убери...

Нетрадиционный ночной пост сразу после одиннадцатого дня – сегодня я узнал, что некоторые станции метро закрывают для прохода пассажиров ровно в 01:00. Пришлось зайти через выход и перелезть ограду.

Наши аргументы за нецелесообразность поиска второго решения судоку были отвергнуты, как и предложение пушить решения подобных конфликтов в отдельную ветку – проверяется только мастер. Что ж, справедливо.

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

Десятый день сходу предлагает гуглить все аргументы `gcc` и синтаксис Makefile. Слава богу, что для решения задания требуется совсем немного, а остальное просто идёт в копилку знаний.

Среди остальных заданий особенно выделилось одно, где тебе будут менять один из заголовочных файлов, а программа должна работать все равно (при чем там есть одно неявное проведение, но об этом поговорим, вероятно, после оценки Мулинеттой). Собственно, тебе передают три аргумента в программу – два "числа" и одну "операцию". "Числа" тебе надо прогнать через собственный `atoi`, чтобы получить реально числа, а вот аргумент должен посимвольно совпадать в заданным в специальной глобальной переменной (массивом структур из строк и указателей на функции). Очень понравилось, можно было создавать сколько угодно файлов, а компилируется это все при помощи твоего Makefile (свобода попугаям!).

Одиннадцатый же день просто ставит крест на всех кто до сих пор не понял указатели (как обычные, так и на функции) и структуры. Привет, односвязный список! Как же я невероятно рад тебя видеть! Лучшие задания, 13/10!

Серьезно говорю вам – если на собеседовании на должность программиста вас попросят перевернуть список, то лучше не устраиваться в такое место. Нанимающие явно не понимают, что (1) конкретно переворачивание списка можно просто заучить, (2) вам, вероятно, никогда не пригодится умение переворачивания списка.

Так или иначе, эти задания по большей части на скрупулезность проверки всех граничных условий: вставить новый элемент в отсортированный список? В начало, если новый элемент меньше других, в конец, если новый элемент больше других, и в середину, при соответствующем условии. Очень легко написать вставку в середину и забыть, что вставка в начало делается совсем по-другому. А что, кстати, если список пустой или только из одного элемента?

Завтра я явно свежим взглядом буду перепроверять все написанные задания (не успел сделать только соединение двух уже отсортированных списков). Ведь success rate одиннадцатого дня... 4.9%

Комментарии

Популярные сообщения из этого блога

Школа 21, до Бассейна, день первый

Школа 21, Бассейн закончился

Школа 21, Бассейн, день первый