Pull to refresh
156
0
Владислав Исенбаев @winger

Уверенный пользователь

Send message
Если очень захотеть, в FB можно попроситься в офис в Сиэтле без изменения компенсационного пакета :)
Да, все именно так. Бонус считается по формуле «базовая зарплата» X «множитель компании» X «персональный множитель», множители варьируются от 0 до 150%. Выплачиваются раз в пол года сразу после peer review, на котором определяется персональный множитель.

PS. Почему именно Amazon? На glassdoor ничего сверхестественного не вижу :)
На открытия тема письма тоже должна сильно влиять, разве нет?
Большая часть бонусов выдается акциями, которые можно продавать только в определенные моменты времени (trading window).
Можно подробнее, что не так с большими компаниями?
В ветке ниже получается набросок алгоритма основанного на движениях (достаточно проверить O(n) направлений переноса, O(n^2) центров поворота и O(n^2) прямых симметрии, проверку кажется можно сделать за O(n*log n)).
Для симметрий работает аналогичный прием: будем рассматривать только прямые проходящие через середины отрезков между одинаковыми углами и отражающие углы друг в друга (с точностью до переноса) и проходящие через пары центров.
Дополнительное условие: на внешней границе должны находиться только эти две вершины. Случай когда есть другие вершины рассматривается через попарные пересечения (видимо нужно брать все серединные перпендикуляры, а не только между равными углами).
Утверждение: если центр искомого поворота находится на серединном перпендикуляре двух вершин то углы при этих вершин должны быть равны и поворот должен переводить один угол в другой.
Таким образом, достаточно рассмотреть максимум по одной точке на серединных перпендикулярах между парами равных углов + их попарные пересечения.
Его можно расширить и на случай несвязных кусков, правда сложность будет расти экспоненциально от их количества. Ваш метод тоже фундаментально ограничен — он не обобщается даже на произвольные выпуклые многоугольники (не говоря уж о фигурах с гладкими границами).
Этот факт вроде бы доказывается легко.
Они рассматривают многоугольник как строку, описывающую его границу, и исследуют какие строки могут получиться если состыковать два одинаковых многоугольника.
В ней рассматривается только случай параллельного переноса/поворота, случай отражения (с пар. переносом) рассматривается в Partitioning a Polygon into Two Mirror Congruent Pieces
А провести опенкап параллельно нельзя?
Тогда уж S --> a+A, A --> a, A --> A+a
Иначе будет порождаться строка «a».
С чего вы взяли что олимпиадник будет писать жуткий код? Жуткий код = невозможность его отладить и невозможность объяснить его сокоманднику (если олимпиадник участвует в ACM контестах).
Да, в своем комментарии я имел ввиду именно отличных инженеров.

Кстати, хороший спортивный программист должен обладать и предсказуемостью — довольно большой процент задач на соревнованиях требует быстро и безбажно «собрать» из стандартных алгоритмов решение.
Не совсем понятно какой смысл вы вкладываете в предсказуемость результата, можете написать более развернуто?
> Не в обиду, но мое личное мнение — что спортивное программирование хорошо лишь тем, что поддерживает «хакерский» стиль мышления, который позволяет решать различные задачи нестандартными методами + знание, как это устроено «под капотом».

И это именно тот набор навыков, который требуется от хорошего инженера, не так ли?

Information

Rating
Does not participate
Location
Berkeley, California, США
Date of birth
Registered
Activity