(no subject)
ens_a_se
Я вот думаю - а не стоит ли посмотреть в сторону Scientific Software developer in Biophysics? Нашел только две компании - DE Shaw Research и Verily Life Sciences (которая под Alphabet). Сложно найти компании подобного уровня, всякие Siements Medical Research выглядят несколько не современно, мягко скажем. Быть, может еще IBM Research стоит рассмотреть. А так - ничего и не видно. Пишут, что биотех не дает плодов, которые от них ожидают инвесторы. Слишком далеки они еще от решения реальной проблемы фармы - разработке лекарств с помощью вычислений.
По поводу Verily - не ясно, можно ли одновременно в гугл и туда собеседоваться? Они хотят phd по биофизике и от 3х лет опыта постдоком, чего у меня нет. Ну и не факт, что визы делают - если только нельзя как-то постдок визу или O1 (но кажется мне, что мало статей у меня).

Тройка задач (и может быть перестановки)
ens_a_se
Встретил я тут несколько задач, которые, как мне кажется, имеют отношение к группе перестановок и, может быть, могут быть решены формально. Я же решаю их с помощью некоторых триков, для каждой задачи свой, рассматривая задачу как графовую.
Что есть перестановка на примере:
Возьмем двумерную матрицу nx2:|1 2 3 4 5|
|3 4 5 1 2|
Можем интерпретировать ее как пары, описывающие ребра в неком графе - (1,2), (2,4) etc
Так как всегда можно отсортировать первую строку, опустим ее и будем писать просто (3 4 5 1 2)
Над ними определена операция умножения - берем первое ребро из второй перестановки (1 3) и ищем ребро исходящее из 3ки в первом (3 2), записываем (1 2) и тп:
(4 3 2 1 5)(3 4 5 1 2) = (2 1 5 4 3)

Все задачи нужно решить за линую и без доп памяти, все числа целые, массивы не отсортированы
Задача 1
Дан массив из N чисел, каждое число из [1,N]. Некоторые элементы массива дважды встречаются в нем, некоторые 1 раз. Нужно найти все элементы из интервала [1,N] которых нет в этом массиве.
[Spoiler (click to open)]
Подсказка - присмотритесь к вершинам у которых нет входящих дуг


Задача 2
Дан массив из N+1 чисел, каждое число из [1,N]. Нужно найти дублирующиеся числа, если они там есть. Массив нельзя мутировать.
[Spoiler (click to open)]
Подсказка - найдите цикл и затем начало этого цикла


Задача 3
Дан массив из целых чисел (как отрицательных так и положительных), нужно найти первое пропущенное натуральное число. Например, [2,5,3,0,-1] - 1, [2,5,1,4,7,-1,-2] - 3 и так далее.
[Spoiler (click to open)]
Подсказка - идея как в первой

Задача про случайные числа
ens_a_se
Другая задача, которая мне понравилась (потому что короткая формулировка и можно решить просто, если понять как). Допустим у вас есть некая функция int f(int n), которая генерирует целые числа в диапазоне [0,..,n-1] с равномерной вероятностью 1/n. Посчитайте вероятность того, что вложенный M раз вызов функции f даст вам заданное число K: P(f(f(f(..f(N) ..))) == K) = ?

Кто-нибудь работает (знает кого-нибудь) в Apple?
ens_a_se
Я тут подумал податься в том числе в Apple на позицию какую-нибудь интересную. И я даже написал им - в Кэмбридж - но не слуху не духу. Думаю, что было примерно так - HR открыла мое резюме, увидела, что там какие-то статьи по биологии и решила, что не хочет разбираться (все равно резюме тонна).
Выяснилось так же, что у меня нет ни одного знакомого в ЛинкедИне, который бы указал, что он работает в Эпл. Может у кого-то есть знакомые, которым не сложно мое резюме закинуть?

подготовка к программерским собеседованиям
ens_a_se
Задача - подготовиться к программерскомму собеседования примерно за 4-6месяцев, параллельно работая фултайм. Как и следовало ожидать, я нахожусь в той же точке, что до PhD - никаких преимуществ PhD не даст.
Я структурировал подготовку в 3 этапа:
1) Цель - вспомнить классические алгоритмы и базовую теорию, научиться относительно быстро решать стандартные задачи, научиться решать неизвестные мне задачи в сжатые сроки, изучить лучшие практики решения подобных задач
1.1) Изучаю тему в Cormen, решаю некоторые задачи на понимание материала
1.2) Параллельно решаю все задачи без ниньдз из Elements of Programming Interview по соответствующей теме
1.3) Раз в неделю участвую в codeforces, где я стараюсь решить 3ую и/или 4ую, пропуская первые 2.

2) Цель - научиться обьяснять в слух решение в процессе придумывания решения, ускорить кодирование подобных задач, натренировать интуицию для решения различных задач, улучшить время затрачиваемое на решение, быть уверенным в битовых задачах
2.1) Решаю в день 1 сложную задачу с leetcode не в слух
2.2) 2 задачи в день объясняю в слух пока решаю
2.3) Читаю первые несколько глав Hackers Delight и играю с битовыми операциями
2.4) Раз неделю участвую в codeforces, стараясь как можно эффективнее использовать выделенные 2ч.

3) Цель - быть готовым к реальному интервью, учесть различные не алгоритмические вопросы, не нервничать на собеседовании, чувствовать себя комфортно в решении классических многопоточных задачах
3.1) Каждую неделю - mock up interviews with friends
3.2) Повторение классических алгоритмов (сортировки, медианы и тп) с обьяснением в слух алгоритма и подготовки ответов к возможным доп вопросам (например, как лучше выбирать pivot в qsort)
3.3) Задачи на Multithreading из Elements of Programming Interview
3.4) Задачи на системное программирование с различных интервью - не знаю какие пока что, но вроде как спрашивают
3.5) Раз в неделю codeforces - к этому моменту я должен решать 4 задачи с высокой вероятностью во втором дивизионе

Один забытый вид вопросов - System Design. Это кто-то спрашивает? Сколько на этот топик выделять?

Все таски в одной группе решаются параллельно.
Считаете ли вы эту схему подготовки практичной/реалистичной или избыточной? Может я упустил какие-то essential topics?

простая задача с контеста яндекса
ens_a_se
Была очень вроде бы простая задача но на n-ом тесте мое решение падает. Собственно, как я понял нет решения только если b > p. Есть чувство, что это не единственный случай когда нет решения, но туплю и не могу понять какой еще.

О чужой жизни
ens_a_se
Путешествия - это способ пожить чужой жизнью. Жить в чужой квартире, ходить в незнакомые рестораны, пить местное вино и ликеры в баре. Как шляпа Атанасиуса Перната из романа Голем - одел и живешь совершенно иначе.
Когда идешь по темной улице ночью и смотришь в освещенные окна домов - думаешь, каково это быть другим человеком и жить не так и думать не так и все не так, хотя и похоже. Путешествия позволяют на короткое время почувствовать себя в чужой шляпе.

ML наступает
ens_a_se
Пока я не могу найти времени на изучение даже основ Machine Learning, уже вышло 4 фреймворка для Deep Learning: TensorFlow( Google ), Torch ( Facebook ), Chainer, Theano, CNTK (Microsoft).
И они работают на GPU - доклады на GTC2016.
Правда не знаю как слайды скачать. Прикольно бы взять какую-нибудь популярную задачу и решить 4мя фреймворками, а потом сравнить перфоманс в плане вычислений и результата.

о простоте
ens_a_se
Один знакомый кулинар, недавно переехавший в США, сказала мне, что там не понимают ничего в простых вкусах. Так же, собственно, как в России. Скажем, в Италии вам могут принести пиццу Маргарита (самая базовая пицца - тесто, моцарелла, помидоры) которая будет идеальной и, в общем, люди оценивают пицерию сначала по маргарите. Или тоже самое с пастой - можно прийти в крутой ресторан и взять простую пасту, которая будет в своем роде совершенной. В России же все должно быть с некой претензией и какими-то лишними изысками. В этом я вижу непонимание совершенства в простом.

Развивая эту идею на другие области - можно же играть относительно простую музыку, но очень хорошо. Скажем, Morphine - довольно простая в мелодическом смысле, да и ритм не то чтобы супер замысловат. Басист вообще аскет - 2 струны. Не 6 как сейчас у каждого метал-корщика. Но между тем, их музыка полна и завершена - это не признак примитивности, а, напротив, искушенности в музыке. Ограничивать себя в средствах выражения, для достижения совершенства в выбранной палитре.

Впечатления от Техаса, экстраполированные на Америку
ens_a_se
Побывал я в Остине, техас. Америка кажется после Европы местом странным - если одной фразой то здесь гораздо меньше культурно-исторического багажа. В этом плане похоже на Россию - у нас он был, но советская власть, а потом и лихие 90ые его подчистила. Но есть свой маленький капитолий, правда все колонны и декор сделаны и крашенного железа (в том числе и купол), а не из кирпича и мрамора если бы дело было в Старом Свете.

Read more...Collapse )

?

Log in