Порридж В Ко-ливинге
Я нашел пост
Viktor
Хотя на интервью обещали Реакт
Ну все верно. Bem-on-react 😆
Порридж В Ко-ливинге
Порридж В Ко-ливинге
Порридж В Ко-ливинге
https://habr.com/ru/post/470407/
Порридж В Ко-ливинге
Там задача прям какую я разбирал
Порридж В Ко-ливинге
Порридж В Ко-ливинге
Там все задачи, которые мне давали в Я
Порридж В Ко-ливинге
У них реально так редко задачи меняются?
Порридж В Ко-ливинге
Ого
Порридж В Ко-ливинге
Сегодняшняя Note: Your solution should run in O(log n) time and O(1) space.
Порридж В Ко-ливинге
У всех получилось с первой попытки?
Viktor
С первой - нет :-) ну бинпоиск потренироваться писать отличная задача, по-моему. У меня, правда немного громоздко вышло.
Viktor
Меня литкод, тем что показывает упавший тест, вообще развратил. Не хочется думать, нажал сабмит, посмотрел где косяк в логике.
Viktor
Другое дело - контест, там за это штраф.
Viktor
На acmp.ru тесты не показываются - не проходит и все тут. Сам думай.
Порридж В Ко-ливинге
Порридж В Ко-ливинге
5-10 неправильных сабмита – можешь идти домой
Viktor
Тогда вам CF 🤣
На литкоде в контестах тоже так. На CF ещё фаза открытых взломов есть, это вообще по всем правилам ICPC
Порридж В Ко-ливинге
Порридж В Ко-ливинге
Мы mock провели
Evgeniy
Мы mock провели
И как? Решил?
Viktor
Мы mock провели
О, крутяк! Отзывы в студию 💪
Порридж В Ко-ливинге
О, крутяк! Отзывы в студию 💪
Ну о себе могу сказать, что как обычно – медленно
Viktor
Фидбек конструктивный в лучших традициях честных рекрутеров дали?
Viktor
Друг другу
Порридж В Ко-ливинге
Сказали что Гуглдокс не подготовил (но я первый раз, делал в докс), и что если забыл как называется функция (перепустал padEnd с padBack), то можно вынести её и сказать что реализую позже
Порридж В Ко-ливинге
А так сделал костыль из for(var k = 0; k <= i; ++k){ str += ‘a’; }
Yuri
да я сразу на совещание сбежал, вот сижу
Yuri
решил отлично!
Evgeniy
решил отлично!
А какие задачи давал?)
Yuri
одну успели решить https://leetcode.com/problems/goat-latin/
Порридж В Ко-ливинге
одну успели решить https://leetcode.com/problems/goat-latin/
Мое решение https://pastebin.com/9Sp0rTZY
Evgeniy
У меня она какая-то с недописанным кодом
Evgeniy
подгрузился
Evgeniy
Писал и не закончил
Viktor
Звучит как задачка на стек, когда прочитал «надо добавить, потом удалить». Любопытно, не видел задачку, порешаю.
Yuri
да не. она в лоб
Viktor
да не. она в лоб
А тебе какую задали?
Yuri
мы только в одну сторону успели
Yuri
какая ж обманчивая окаазалсь задача https://leetcode.com/problems/happy-number/
Yuri
вместе с женой ушли на 4 часа в теорию чисел
Evgeniy
А где вы проходили интервью?
Yuri
а оказалось, что не стоило
Evgeniy
на литкоде?
Yuri
на литкоде?
в гуглдоке и скайпе
Yuri
задачи брали с литкода
Порридж В Ко-ливинге
Добро пожаловать в клуб
Порридж В Ко-ливинге
А решение оказалось очень простым
Порридж В Ко-ливинге
Даже с O(N) памяти
Evgeniy
вместе с женой ушли на 4 часа в теорию чисел
она через хэш таблицу решается
Yuri
ты чо, там столько побочных крутых результатов вышло крутых
Порридж В Ко-ливинге
Yuri
Это памяти куча надо
памяти не очень много надо кстати
Evgeniy
не много памяти
Yuri
ты чо, там столько побочных крутых результатов вышло крутых
например, что если тебе неважен порядок цифр в числе, то число любой длины сводится к статистике по его цифрам. Ну типа “четверок - пять, восьмерок - три, девяток - 200”
Порридж В Ко-ливинге
То, что это число < 163 доказывается не сложно, а вот само число надо поискать
Evgeniy
https://leetcode.com/problems/happy-number/discuss/560443/C-straightforward-solution-using-HashSet
Evgeniy
я вот так решал
Порридж В Ко-ливинге
Порридж В Ко-ливинге
Доказал что это число меньше 163, а потом перебрал
Yuri
я через статистику чисел доказал
Порридж В Ко-ливинге
я через статистику чисел доказал
Ужас, там слишком много
Порридж В Ко-ливинге
А как?
Yuri
ну типа, если у тебя есть шестнадцатизначное число
Yuri
то максимально из него получится 16*9^2 в результате прохода алгоритма
Порридж В Ко-ливинге
Я упрощал все
Yuri
почему?
Yuri
меня слегка расстроило, что надо было просто в лоб реализовать алгоритм и задача была всего-навсего на обнаружение цикла (через хэшмап)
Yuri
Так проще всего
да, но чтобы иметь право это сделать, надо доказать несколько вещей
Порридж В Ко-ливинге
почему?
int getHappy(int digits){ int newNum = 0; for(; digits != 0; digits /= 10){ int lastDigit = digits % 10; newNum += lastDigit * lastDigit; } return newNum; } bool isHappy(int n){ while (n != 1){ n = getHappy(n); if (n == 145){ return false; } } return true; }