Ads
Comments 166
+8
Вот это круто, мне нравится такой подход к набору кадров.
-3
Высосали догадку из пальца? Молодцом, так держать! Смените палец и продолжайте.
-1
«Молодцом», «так держать» ты меня еще поцелуй))
А догадка совсем не из пальца
0
Ответ на этот вопрос станет решением бонусной задачи от Google. Дерзайте же!
+1
А HR это ещё и название отдела кадров :)
Я думаю он намекал на то, что «Скиньте CV HR Гугл» будет выглядеть забавнее/короче.
-26
Уже второй раз за короткий срок сильно разочаровываюсь в google.

Первое разочарование было от прослушивания интервью с Долговым; ё-моё! двух слов связать не может, хихикает что-то, все ответы начинает «хороший вопрос» и дальше мычит… производит впечатление какого-то раздолбая, который понимает, что должен 200р, но надеется, что все забудут.

И вот второе разочарование! На таких задачках набирают программистов те, кто не понимает, зачем нужен строгий код-стайл, документация, тестирование… Такие программисты могут быть нужны только в контору, где занимаются говно-аутсорсингом — напишем, лишь бы как-то работало, деньги получим, а дальше — проблемы заказчика. То, что человек разгадает такой ребус, не говорит о человеке ничего, как о программисте. Как он относится к глобальным переменным? К goto? К наследованию?.. Разделяет ли он логику и представление? Знает ли он что-нибудь о функциональном программировании и его плюсах/минуса?.. И ещё 1001 важных вопросов, к которым этот тест никак не относится.

Правда… думается, что это не единственный тест на пути в гугл. Хочется верить.
+22
То, про что вы говорите — можно научить. А вот мыслить нестандартно — научить тоже можно, но гораздо большими усилиями. У разных компаний — разный подход, у больших компаний, вроде, Google, Microsoft и остальных — подобные задачи в тестировании — это само собой разумеющееся. Таким компаниям не нужны просто кодеры, им нужно нечто большее. И раз данные компании успешные — значит в этом что то есть?
Это мнение еще основывается на книге «Как сдвинуть гору Фудзи».
-32
Теоретически, я с вами согласен. Но на практике я не видел человека, который бы уже в зрелом возрасте (после, скажем 25) научился разумно организовывать код, писать документацию и комментарии (а не просто "// god save me!"), давать разумные имена переменным и файлам (а не new.php). И наворотив, никогда не поздно прочитать книжку про алгоритмы и структуры данных.
+2
базовые знания необходимы всегда, без них никуда, разумные коменты и грамотно написанный код это оч хорошо,
но когда один может выполнить задачу на 50 строчках, а другой на 100 — в этом разница
+5
да расслабьтесь вы уже =) люди и после 30 способны меняться, когда поджимает. В задаче не просто так написано «future with Google», а не «future in Google», прислушайтесь к первому ответу — Гугл действительно берет на себя ваше обучение. Для них не важны ваши знания в той или иной области, им интересней атипичные решения банальных задач. А вы, как вы сами же заметили чуть ниже, жертва стереотипов. Будь вы трижды умны и необходимы гуглу, вы будете стоять на одной линейке с необразованным голодным негритянком, который решит этот ребус. И уже после года работы в гугле, даст фору любому спецу.
+11
Никто в этой дискуссии не обратил внимание на тот факт, что там написано «You may have future with Google»?
+5
Ну тогда вот моё нестандартное мнение: это CD-key к Windows 95 :)
Есть у меня будущее? :))
+11
Вам, похоже, лет 17? :)
Ах, этот вьюношеский максимализм, как же, как же, кхе-кхе… Лет через 10 будете над собой теперешним смеяться. Всё далеко не так плохо, как вам кажется :). Научиться каким-то примитивным формальностям вроде организации кода, доков и комментариев — это плёвое дело в любом возрасте, если ты сам не полный болван изначально. А вот научиться думать… тут, как раз, если в молодости не научился, потом книжка по алгоритмам не поможет.
0
Тут ещё проблема в том, что научиться формальностям могут практически все (не все хотят, но я сейчас не об этом), а вот научиться думать, как это ни печально, далеко не все в состоянии. Потому что интеллект — в очень большой степени наследуемое качество, и прыгнуть выше своего биологического потолка крайне трудно.
+1
Довольно бездоказательно, за исключением пограничных случаев тяжёлых наследственных мозговых нарушений. Примеров «прыжков выше» более чем достаточно. Дети все гениальны от рождения и способны прыгнуть куда угодно. Проблема в том, что их «воспитание» доверяют «случайным людям».
0
Я не уверен, стоит ли это здесь обсуждать, так тема — явный оффтопик (вон, снизу уже ахтунгами обзываются). Но если интересно — вот довольно неплохая статья (первая ссылка в гугле по запросу «корреляция IQ детей и родителей» ;-) ).
0
Прочитать черный текст на темно-сером рябящем фоне не представляется возможным. О чем там?
0
>Но если интересно — вот довольно неплохая статья

Пробежал по диагонали и сразу же бросилось в глаза:

Она [критика традиционного тестирования и самого понятия IQ] ведется уже несколько десятилетий и особенно обострилась с начала 60-х годов, когда люди с низким IQ громко обиделись на психологов и стали, как принято у этой публики, выражать свое недовольство скандированием лозунгов и битьем витрин.

… чем лишний раз подтвердили правильность сделанных выводов %)))
0
Вы бы хоть в профиль заглянули, а можно и на сайт, увидели бы что с возрастом ошиблись раза в 2.
0
Даже не знаю что и сказать… Правильно ли я понял, что вот конкретно вы после 25 утратили способность обучаться даже таким примитивным вещам? Видимо, вам нужно работать над собою. Я вот ещё постарше буду, но что-то описаных проблем не наблюдаю. Скажу даже больше, с возрастом я осознал какими средствами в моём случае можно целенаправленно повысить такие способности и ускорить и оптимизировать обучение новым кундштюкам. В юности это происходило стихийно и поэтому давалось сложнее.
0
А причём тут я вообще? Вы бы и в мой профиль заглянули, увидели бы что мне ещё 20 нет :)
+1
Да это-то я понял :). Я о ситуации вообще :). Кстати, извините, если что. Комментарий действительно не вам должен был быть адресован.
+2
Да не волнуйтесь, я уже поплакал в углу и простил Вас. :)
0
>Но на практике я не видел человека, который бы уже в зрелом возрасте (после, скажем 25) научился разумно организовывать код, писать документацию и комментарии...

Этот плакат, напоминаю, висел на ярмарке вакансий в MIT, основные посетители которой — студенты.
0
Приезжайте в гости, я вам такого покажу :)

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

Как выше и написали — есть компании, которым нужны кодеры, а есть компании, которым нужны люди, умеющие решать проблемы. У каждого свой подход.
0
есть 100% успешный опыт обучения группы людей далеко за 25 (в диапазоне 40-60 лет)
+10
А почему вы решили что благодаря этому тесту гугл хочет найти программистов? Тут помоему как раз какая-то последовательность зашифрованная, это больше подходит для поиска математика/криптоаналитика.
0
Согласен полностью. Тут я стал жертвой стереотипов :-) (Но к кандидатам-программистам часто пристают с такими тестами.)
+4
А разве в гугле работают только лишь программисты?
0
не ну а чо. для таких как вы пишите существует ИБМ :) только и всего
+4
гугл силен своими математиками, а не роботами-оформителями кода.
по Вашей логике лечить людей в больницах должны преподаватели русского языка, потому что врачи с их ужасным почерком, нужны только в котонору, где занимаются «говно-аутсорсингом».
-1
Человек, решивший нестандартную задачу, без труда обучится необходимым правилам, если чего-то не знает. А тот, кто заучил теоретические основы и подходы — ещё не факт, что найдёт выход из неординарной ситуации или заметит скрытую неоптимальность. Кто ценнее?
+1
>На таких задачках набирают программистов те, кто не понимает, зачем нужен строгий код-стайл, документация, тестирование…

«If you can figure this out, you may have a future with Google»

На таких фразах выявляют тех, кто не придаёт значения деталям ;)
0
ну вперед, реши этот «ребус», если такой умный. ты ж походу шаришь лучше всех студентов MIT!!!
UFO landed and left these words here
+14
ну тут как раз весьма очевидно.
коробка будет закрыта-открыта ровно столько раз, сколько раз число делится на множетили. (можно считать что коробки были зыкрыты и потом их открыли, поскольку у всех делитель 1)
учитывая что любое число вида
k*n делится и на к и на n то на состояние коробки они не повлияют.
Остаются только k*k, они влияют на состояние коробки.
то есть если число полный квадрат — то коробка будет открыта, иначе закрыта
значит ответ
floor sqrt N

как-то так.
-2
Странные какие-то у вас рассуждения. Можете немного пояснить? Что такое k, например.
+2
Так, нам на вход дано число N
рассмотрим делитель числа N — число k
обозначим за n = N div k, n*k = N
1) n != k, тогда состояние коробки будет изменено 2 раза, на проход номер n и на проход номер k. Ничего в результате не изменится, неинтересно.
2) n = k, то есть N = k*k, значит состояние коробки будет изменено только один раз на k-м проходе. Именно то, что нам нужно.

Таким образом все числа, которые представимы в виде полного квадрата ( {N | существует k: N=k*k} ) дадут открытые коробки.
Вот и всё.
-3
Мне кажется, что это неверное рещение. Если рассмотреть число 3*2^2. То на 2 закроем. На 4 откроем. На 6 закроем. На 12 откроем. А это не квадрат. Как я понял открыта ли коробка решает делиться ли произведение степеней простых делителей этого числа на 2. Если делиться то коробка открыта.
0
Не понимаю, почему плюсуют это решение. Очевидно ведь не верное.
Пусть N = n * k. Тогда коробка будет открыта/закрыта на n-й проход, на k-й, а также на все проходы, номера которых являются делителями n или k, а также их комбинаций.
Например, коробка 12 (3х4) будет открыта/закрыта на 2, 3, 4, 6, 12 проход.

Т.е. ответ верный (вероятно, увиденный где-то), но доказательство — нет.

Правильное решение намного проще.
Коробка будет открыта/закрыта столько раз, сколько у неё есть делителей, отличных от 1.
Если число разложить на простые множители, получим что-то вроде
N = a^x * b^y * c^z *… (a, b, c простые; x, y, z больше 1). Для такого числа общее количество различных детилелей равно (x+1)(y+1)(z+1). Почему это так — не буду объяснять, думаю, можно самостоятельно найти.

Чтобы коробка в конце была открыта нужно, чтобы число её делителей было нечётным. Это возможно только когда x, y, z,… — чётные. Но если они чётные — число является полным квадратом.
0
Приведите пример.

> Например, коробка 12 (3х4) будет открыта/закрыта на 2, 3, 4, 6, 12 проход.
Если её состояние изначально было открыта, то она станет закрыта.
открыта -> (2) закрыта -> (3) открыта -> (4) закрыта -> (6) открыта -> (12) закрыта
Финальное состояние закрыта. 12 это не полный квадрат, значит закрыта. У меня всё ок, а у Вас?

И да, решение придуманно именно мной и никогда раньше этой задачи я не решал. Если у Вас проблемы с пониманием, то извините. Зачем раскладывать что-то на множетели, есть по сути все разложения ни на что не влияют.

У вас если x,y,z — четный, то число N = (a^(x/2)*b^(y/2)*...)^2. То есть Ваше решение однозначно сводится к моему. Причем мой критерий однозначно проще.

В общем не спешите и подумайте.
0
Я не спорю, что коробка 12 будет закрыта.
Я говорю о вашем доказательстве, а именно:
1) n != k, тогда состояние коробки будет изменено 2 раза, на проход номер n и на проход номер k. Ничего в результате не изменится, неинтересно.


Состояние, очевидно, не будет изменено 2 раза. Оно будет изменено 5 раз (или 6, если считать, что на 1 проход все коробки открыты). А неверное утверждение не может служить доказательством, т.к. из него, по законам логики, может следовать как верный, так и неверный вывод.

Моё решение не сводится к Вашему. Ответ — да, одинаковый. Но одно дело доказать утверждение, а другое сказать «мне голос свыше сообщил, что оно верно» :).
0
Извините, поставил лишнюю запятую.
если n != k то произойдут 2 изменения на шагах n и k, остальные шаги нас не интересуют, поскольку на них идёт оперирование с другими делителями.

Иными словами утверждение гласит, что для любого делителя числа N, строго меньшего, чем sqrt N будет существовать делитель, строго больший sqrt N, и между двумя этими групами можно установить биективное отображение (взаимо-однозначное), а это значит, что число делителей N, НЕРАВНЫХ sqrt N всегда чётно. (при биективном отображении размерность множеств должна совпадать)
Значит на состояние коробки влияет только одно число, а именно sqrt N. Таким образом получается, если sqrt N — целое число, то коробка останется открытой.
А если sqrt N — целое, то (!) существует такое целое число (интересно какое-же =] ) k, для которого выполнено N = k*k.
+1
Давненько был тут топик с рассмотрением этой задачи.
UFO landed and left these words here
+1
В таких задачах ждут не готового решения, а процесса решения
-4
1-я коробка никогда не будет закрыта, остальные будут.

ответ: 1
0
если N = 4 то уже останется открытых 2 коробки. (1 — открыта, 0 — закрыта).
1 проход: 1 1 1 1
2 проход: 1 0 1 0
3 проход: 1 0 0 0
4 проход: 1 0 0 1

вроде так (ответ 1 — не верен).
0
Он про другое. Он понял задачу так, как будто нужно найти количество коробок, которые ни разу не закрывали.
0
Я решал её на детской олимпиаде по математике в школе. Правда, уже не помню, как.
+8
Ну и у кого есть какие идеи что это может быть?
По идеи должна быть зашифрована либо следующая загадка, либо адрес какого-либо источника в интернете. Иначе не понятно что делать с расшифрованным четверостишием.

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

Из ожидаемого — ip адрес, адрес страничка (но если это просто комбинация букв, то смысл?), несколько английских слов.
Если предполагать что кодировка всего 5-битная, то вполне неплохо влезает заголовок IPv6, вот только видимо читать надо совсем не в лоб, получается белиберда.

Какие у кого могут быть предложения о том, что это за штуковина?
+1
Интересно то, что текст не сплошной. Значит пробелы могут быть значущие.
Если адрес, то должно быть что-то характерное — домен com, net, etc… Точка, но не обязательно.
Наличие множества цифр так же наводит на ip адрес. Но если использован даже простой шыфр замены эти рассуждения…
Это врят ли Виженер, ибо тогда надо тупо подбирать ключ, ибо для фридмана текста маловато а длины ключа сделать что-то проблемно.
Думаю это какой-то шифр перестановки, больше всего похоже на шифр Плейфера. Текст состоит из двух матриц 5х5 что соответствует английскому алфавиту.

+1
Разочарован. Примитивный шифр замены со смещением алфавита.
Но, может смысл был в том, что бы определять людей, которые не усложняют себе задачи…
+1
а плакат прям один в один такой вот весит, с надписью внизу pics.kz и размером? есть original link?
0
Интересно, может решение можно увидеть только визуально после какой либо мат обработки — то есть это вполне может быть просто буква G! :)
0
Вряд ли… А потом что? Написать в Google и сказать, что ответ буква G?
ИМХО здесь будет именно ссылка\ip\mail
+2
Кто разгадает — пишите сюда! Весь Хабр пойдёт в Google работать =)))
+89
Ответ:

Код:

8MLDQ6 | T | UI | 6TFML | RH | AA | NRA6Q | 8EFL | DMQ86II2 | O3 | 2S5J | 13JXOJ

Шифр:

0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ (JOBS)
456789ABCDE2FGHIJKL0MNOP1QRS3TUVWXYZ (0123)

Результат:

CONGRA | T | UL | ATION | SK | EE | PSEAR | CHIN | GORCALL6 | 17 | 6390 | 570×10

+3
Congratulations keep searching or call
Поздравляем, продолжайте искать или звоните…

Не все так однозначно :)
0
В смысле? ну как… Есть Код, есть шифр…

Например, первый символ в коде 8. В шифре 8 обозначается как C. Значит первая буква C.
0
Чё-то у меня автоматом всё постится… не успеваю дописать =))
Второй символ M, по шифру M это O… Ну и в итоге получается Congratulations Keep Searching Or Call…
+1
0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ
456789ABCDEFGHIJKLMNOPQRSTUVWXYZ1234

такой шифр почти показывает слово congratulations, но явно чего-то не хватает, поэтому берём JOBS и заменяем на 01234, получаем:

0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ
456789ABCDE2FGHIJKL0MNOP1QRS3TUVWXYZ
UFO landed and left these words here
0
Чорт, все же купился на разбитие по словам, и по наличию такого слова как AA решил, что это не одноалфавитная шифрация, а шифр Виженера.

Предположив, что 8EFL и 2S5J — это либо then, либо jobs, раскрутил конец фразы как THEN REPORTED TO JOBS GOOGLE.

Так же наличиствует статистика

G может кодироваться как D или X, между ними 20 симв.
O может кодироваться как J или 3, между ними 20 симв.
T может кодироваться как O или 8, между ними 20 симв.

И почему так получается?
+1
Подпись на картинке внизу? Google Jobs? Ну и само направление наверно
0
Не все так просто…

8MLDQ6 TUI6TF MLRHAA NRA6Q8 EFLDMQ 86II2O 32S5J1 3JXOJ
CQPHUA XYMAXJ IPNDEE RVEAUC IJPHQV CAMM64 76W9N5 7N2SN

О да, CQPHUA — очень похоже на congratulations ,-)

На самом деле догадаться о подстановке можно по двойным 'AA' и 'II'. Чаще всего это или 'EE' или 'LL'.

'CAMM' наводит на мысли о «неожиданном» смещении. Ну и большое количество цифр в конце.
0
я сначала хотел найти наиболее повторяющаюся часть шифрка, потом до подбора АА додумался :(
0
google, Вам же ответили :) уже есть это решение в Интернете. Хотя если самостоятельное — мои извинения.
+8
нет, не самостоятельно ;) я люблю кодить, а не загадки разгадывать :-P
+4
Нашел решение на python,

"+1-"+"".join([str(len(x)) for x in open("google.txt").read().replace("\r","").replace("\n","").split()])+"0"

Результат '+1-6172748660' телефонный номер
Где как говорит автор, робот по телефону представится, как Google и попросит ваше имя и телефон.
+1
Нет, там висит другая компания но ни тоже резюме собирают, но говорят что они не из Google ;)
0
Ну не просто ж так там keep searching :) Хочешь добраться до Корпорации Зла — копай дальше!)
0
Просто так. На звонок отвечают Google Jobs, копать уже некуда… Здесть сарказм типа «хочешь ещё голову поломать, покопай на здоровье, а вообще вот номер — ...»
+2
Сложив все буквы в каждом куске разделённым пробелами не считая переходы на следующую строчку получаем номер (617) 2748660, это номер который получил @jeje в своём скрипте на питоне… Вот там сидит другая компания и собирает резюме, и они говорят что вы решили вторую самую сложную задачу, и ещё говорят что они не из Google, но всё равно просят оставить данные =) А по тому решению что я выше написал (keep searching) там отвечают Google Jobs.
+39
Напомнило
«Требуются ясновидящие на очень высокооплачиваемую работу. Куда обращаться — сами знаете» :)
+5
В организацию требуются классные админы — оставляйте резюме на рабочем столе главного windows-сервера.
+13
Храню в своем архиве эту заметку:
13 июля 2004

В пятницу 9 июля на одном из калифорнийских шоссе появился огромный рекламный
щит. Таких объявлений жители Кремниевой долины еще не видели. Hикаких
картинок, никаких логотипов компаний. Просто текст, причем очень странный.
Hа щите было написана такая фраза: {Первое 10-значное простое число, найденное
в последовательности разрядов e}.com.

Как можно догадаться, это задача для программистов. Чтобы ее решить, нужно
составить программу на любом языке программирования, которая могла бы выводить
значения константы е и проверять 10-значные последовательности на наличие
делителей. Или можно взять какую-нибудь базу простых чисел и проверять
совпадения со знаками в десятичной дроби «e». Hайденный код, очевидно, нужно
ввести в адресной строке браузера, добавив суффикс <.com>.

Задачка действительно пробуждает любопытство. Очень уж необычно — нечасто
математические головоломки публикуются на огромных рекламных щитах за десятки
тысяч долларов. Что же скрывается за этим? Hарод приступил к обсуждению и
решению ребуса. Многочисленные программки на разных языках программирования
были в тот же день опубликованы в интернете.

Оказалось, что правильный ответ — 7427466391, он ведет нас на сайт
7427466391.com:

«Поздравляем! Вы попали на уровень 2. Теперь идите на сайт www.linux.com,
введите Bobsyouruncle в качестве логина и ответ на это вычисление в качестве
пароля:

f(1)= 7182818284
f(2)= 8182845904
f(3)= 8747135266
f(4)= 7427466391
f(5)= __________»

Согласитесь, все это выглядит довольно странно. Hеужели реклама <линукса>?
Какой-то фантасмагорический сюжет, в котором стирается грань между реальным и
виртуальным миром. Плакат на шоссе является началом виртуального квеста: такое
бывает только в кино.
Впрочем, тайна раскрывается после решения второй задачи, когда на экране
появляется текст: «Одна из вещей, которые мы усвоили, создавая Google: то, что
ищешь, легче найти, если оно само ищет тебя. Мы ищем лучших в мире инженеров. И
вот вы здесь. Hетрудно догадаться, что к нам каждый день поступает множество
резюме, и мы придумали этот нехитрый процесс, чтобы улучшить отношение
сигнал/шум».

Вот оно что!

Оказывается, это Google таким необычным образом ищет сотрудников. Используется
оригинальная рекрутинговая техника, чтобы привлечь даже тех математиков и
программистов, которые никогда не собирались работать в этой компании. Ведь до
последнего момента невозможно догадаться, кто является организатором этой игры.
И только в конце все так неожиданно раскрывается. Hастоящий детектив от Google!
UFO landed and left these words here
+2
У вас ошибка, ч/а показал, что '6' соответствует букве 'E' а не 'A' (алфавит по частоте: etaoin shrdlu cmfwyp vbgkqj xz). А вообще при такой длинне текста частотный анализ лишь уменьшает количество вариантов но не дает ответа (вы точно не сможете подобрать номер телефона).
0
если подобрать хотя бы одну букву верно, то сильно облегчается задача выяснения принципа соответствия между закодированным символом и реальным.
UFO landed and left these words here
0
Тогда, следуя вашей логике, буквы 'E' в данном тексте вообще нет.
UFO landed and left these words here
+2
А текст случайно не слишком короткий для того, чтобы использовать в нем методы частотного анализа? Обычно требуется довольно объемный текст для получения более-менее интерпретируемых результатов.
-13
Правильнее называть ваш код скриптом, а не программой, ведь на PHP
0
если я перепишу это на с++ и скомпилирую это будет достойно называться программой?
UFO landed and left these words here
+4
частотный анализ на тексте менее 60 символов — это самоубийство
-1
божемой, гуглу нужны программисты, которые знают про криптографию чуть больше шифра Цезаря (т.е. шифр Виженера)??
может, подкинет им кто варианты олимпиад по криптографии, что проводят, например, в Академии ФСБ? для школьников, кстати, проводят…
0
В америкаинии ограничение на экспорт криптографии, а фотка по всему миру ходит ;)
0
причем здесь экспорт/импорт криптографии? из-за страшного слова «криптография»?
задачки для 11 класса можно и в инет скинуть
0
Короче, я так и не понял, откуда берется этот JOBS? Оно конечно, понятно что Google Jobs, но я не думаю, что так просто догадаться до этого. и слово Congratulations по простому сдвигу не вычисляется
UFO landed and left these words here
UFO landed and left these words here
+3
На TechCrunch отличный первый комментарий к этой задаче:
«Никто не позвонил, потому что объявление повесили в спортзале»
UFO landed and left these words here
UFO landed and left these words here
Only those users with full accounts are able to leave comments.  , please.