Подтвердить что ты не робот

Интервью Вопрос: чего они хотят достичь?

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

Учитывая цифры:

116 104 105 115 32 105 115 32 99 111 114 114 101 99 ?

Каков следующий номер?

Чтобы действительно понять мой образ мышления, я призываю вас прекратить чтение и действительно попытаться выяснить, что такое следующий номер. Проведите несколько минут, и если вы все еще не можете понять это, прочитайте

Сначала я потратил 5 минут на поиски шаблона, на котором я его не нашел. Я начал чувствовать себя глупо. Помнишь, парень смотрел на меня, ожидая ответа. Я чувствовал себя глупо.
Итак, мне дали ключ. This is not a mathematical question

Я провел еще 5 минут, и он сказал The sequence is important.

Затем еще 5 минут, и он сказал He believed only programmers would understand this

Еще пять минут, и я еще не понял, что такое последний номер. Он дал окончательный ключ, который позволил мне решить его, и это было Think of the numbers as replacment for some sort of Alphabet.

Теперь я призываю вас ответить на этот вопрос, однако я также хочу узнать от людей, почему он даже задал бы такой вопрос? Что это связано с программированием и что он делает от того, чтобы видеть меня, используя 20 минут в отчаянной агонии, обдумывая?

4b9b3361

Ответ 1

Сначала ответ: 116 - это десятичная форма букв ASCII "это соответствует", поэтому следующая буква "t".

Но, когда я понял (учитывая ваши подсказки) шаблон, я бы сделал несколько комментариев:

  • Предположительно, он пытался понять, как вы атаковали сложную, даже туманную проблему.
  • Если он действительно сидел молча в течение 5 минут за раз, то ему нужно работать над своим типом интервью, хотя бы для того, чтобы побудить вас поговорить.

Это сказало:

  • Вы задумывались вслух и говорили через различные подходы, которые вы использовали?
  • Вы задавали вопросы о проблемной области?

Кстати, я неправильно вспомнил "а" как 96, а не 97, поэтому я бы пропустил проблему. Но я бы все время говорил.

Вы должны передать свои мыслительные процессы, а не просто придумать ответ. Я дважды интервьюеры задавали мне проблемы, которые они не ожидали от меня, как с намерением увидеть мой подход к их решению.

(Кстати, я получил предложения от обоих собеседований, потому что я проделал свой путь через проблемы - хотя я не смог закончить их решение.)

Ответ 2

Любой, кто записывает значения ascii в десятичной форме, безумен. Последовательность выглядела бы намного более знакомой, если бы она была в шестнадцатеричной форме.

Ответ 3

Ваш вопрос напомнил мне рекламную кампанию EA несколько лет назад:

alt text

Ответ 4

У меня аутизм. Как ни странно, после первого взгляда мне сказали, что это не численный рисунок, следующее, что я заметил, было 32-м, что я знаю, это пробелы. Оттуда я получил это/довольно быстро (меньше минуты). Это довольно быстро проверить, потому что коды IH и ST последовательны, я не знал код ascii для любого из них, но как только я подтвердил промежуток IS, я знал, что я на правильном пути.

Тогда RR является быстрым - один символ ниже S.

Итак - да, я получил это почти сразу. Но, как я уже сказал, я страдаю аутизмом. Там ведро загружает нормальный материал, который я не могу сделать, но сопоставление с образцами - это то, что я делаю навязчиво. Я подозреваю, что это было бы бесполезно в интервью.

Я знаю, что это выглядит как страшный вопрос, потому что он проверяет ваши навыки нарушения кода/шаблона, а не ваши навыки решения проблем, но я подозреваю, что это не намерение.

Когда я нанимал людей, я использовал аналогичное упражнение, в котором использовался пакет карт с цветными фигурами и требовал от людей сортировки карточек в кучи, а на основе моих "пригонок" не отвечал "ответов" - выработайте правила игры.

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

Для сложной роли R & D вы хотите нанять людей, для которых сложнее проблемное пространство становится более заинтересованным и взволнованным, что они чувствуют. Для менее сложной роли вы хотите, чтобы кто-то, кто предпочел бы пространство проблем, был стабильным - например, кто-то писал запросы для большой базы данных, где мы вообще не хотим менять систему.

Это действительно довольно полезное упражнение по сортировке для сопоставления кандидатов с ролями.

Ответ 5

Итак, мне это потребовалось немного, и мне не нужны намеки, но правильный ответ - 116. Дешевая распродажа для меня была не столько 32-м, сколько повторением чисел в шаблоне. Не было ясной математической логики, но что-то еще о шаблоне щелкнуло для меня, и я просто получил его.

Однажды, давным-давно, мне удалось взломать игру (Koronis Rift для тех, кто заботится, и я никогда не загружал ее в BBS). Я взломал его не потому, что хотел его скопировать. Это было из-за того, что он сохранял игры на том же диске, что и игра, и это меня очень беспокоило. Как только я его взломал, я был очень горд собой, потому что защита от копирования сделала что-то довольно сложное. Поэтому я хотел поместить свой знак на экран загрузки.

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

Кто-то спросил меня: "Как вы узнали, что это была фотография?". И я не мог объяснить. Он просто выглядел как один.

Это не талант/умение, которого я ожидал бы от хорошего программиста. И я нахожу ответы на вопросы, которые прямо предназначены для кандидата, чтобы они не были действительно в бешенстве.

Да, есть кое-что о том, как решить проблему кандидата. Но если я собираюсь проверить это, я собираюсь хотя бы придумать игрушечную проблему, связанную с работой, которую я хочу, чтобы кандидат сделал.

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

Я думаю, что в некоторых интервьюерах есть определенный садизм. Определенная радость от того, что кандидат извивается. Они могут говорить о поиске способности решения проблемы кандидата, но я думаю, что они действительно просто ищут ощущение (не обязательно актуальность) умнее, чем кандидата.

Ответ 6

Ну, я думаю, что у меня есть ответ, и я получил его довольно быстро - хотя с помощью части справочного материала.

В интервью это звучит немного пустая трата времени. Конечно, я не спрошу. Я согласен с тем, что, вероятно, только "программист" будет программировать, но он не указывает ничего существенного в отношении навыков этого программиста.

Ответ 7

Является ли следующее число 116?

Тем не менее, "Shir ir correct" тоже не имеет никакого смысла.

Изменить:

К сожалению,

Ответ 8

Я увидел 32 и сразу нажал на меня.

Можно утверждать, что суть вопроса заключается в том, чтобы увидеть, как вы нащупываете свой путь вокруг, казалось бы, непреодолимого препятствия. Вы начали принимать конечные различия, ища арифметическую или полиномиальную последовательность? Или ты просто немного пощупал, а потом пожал плечами и сдался?

Еще один страшный вопрос, на мой взгляд.

Ответ 9

ASCII → int? Интервьюер сумасшедший...

Должно быть 116.

Перевод: this is correc

t отсутствует. t равно 116 в таблице ascii.

http://www.cs.utk.edu/~pham/ascii.html

Ответ 10

Python:

>>> ''.join(map(lambda x:chr(int(x)),'116 104 105 115 32 105 115 32 99 111 114 114 101 99'.split()))
'this is correc'

Цифры выглядят как коды ASCII. Это определенно не то, что я бы спросил в интервью, хотя, поскольку я не ожидаю, что кто-нибудь узнает коды ASCII в десятичной форме в интервью. Hex немного отличается (вы можете ожидать, что люди узнают, что %20 - это пробел), но все же.

Ответ 11

Его ascii-коды. Следующая буква t. Возможно, вам понадобится знать коды ascii для работы, а также способность обнаруживать паттеры.

Ответ 12

Я предполагаю, что это поможет вам решить проблему.

Если бы вы быстро разобрались (я подозреваю, что 32 будут раздаваться тем, кто впитал некоторые коды ASCII), у вас, вероятно, есть еще один подобный тип - и так далее - пока вы не окажетесь вне зоны комфорта.

Как собеседник, эти вопросы могут быть способом обнаружения того, что работа не для вас!

Ответ 13

Это код ASCII, решение - "t" (116). Однако мы должны обратить внимание на его помощь, потому что он, вероятно, планировал их.

"Это не математический вопрос" Конечно, мы должны интерпретировать цифры как символы и находить число, которое можно использовать для заполнения пустого символа, поэтому в конце задания вы могли бы сказать ему, что это очень математично, потому что вам приходилось заполните шаблон с помощью функции.

"Последовательность важна" Да, 32 помогает вам понять, что он говорит о персонажах.

"Он считал, что только программисты поймут это" Некоторые не программисты тоже это понимают, но в основном это понимают программисты. Он пытался указать, что вы можете встретить эти цифры, когда работаете над программными кодами/отладкой.

"Думайте о цифрах в качестве замены для своего рода алфавита". Я уверен, что вы знали теперь ответ.

Он хотел проверить вашу изобретательность и силу воли. Я встречал такие вопросы в тестах IQ (ОК, в тестах IQ они не привлекали символы ASCII, потому что большинство людей не слышали об ASCII).

ИЗМЕНИТЬ:

Конечно, этот вопрос был запланирован заранее, все подсказки были дополнительными подсказками, и им было интересно, сколько времени и сколько подсказок потребуется для расшифровки последовательности. Однако это математический вопрос.

Ответ 14

Следующее число равно 116.

Это простой набор чисел ASCII, стоящий за строкой "это соответствует". Немного поинтересовался, и намек был в диапазоне чисел и в том, что появляется 32 (пробел).

Вы должны знать наизусть таблицу ASCII? Это не имеет смысла для меня как вопрос для интервью - возможно, он хотел, чтобы вы идентифицировали это как последовательность ASCII.

Ответ 15

Спасибо за подсказку с алфавитом - это код ASCII:

numbers = [116,104,105,115,32,105,115,32,99,111,114,114,101,99]

for n in numbers:
  print "%c"%n,

дает:

t h i s   i s   c o r r e c

но без доступа к компьютеру я бы не разобрался с текстом так быстро. И я также потратил бы довольно неудобные пять минут...

Ответ 16

Знаете, это напоминает мне о лоте математических/логических экзаменах, которые я использовал в школе, где я буду работать и работать над этим, и, наконец, пришел к тому, ответ, который они искали... только для того, чтобы почувствовать огромное чувство неудовлетворенности, потому что вопрос действительно не имел правильного ответа вообще. У него просто был ответ, который, очевидно, должен был быть прав.

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

"Послушайте, я понял, что вы, вероятно, хотите, чтобы я сказал 116, но почему? Почему строка This is correc логически должна заключаться в t?"

Я имею в виду, подумайте об этом. Вопрос только в том, "Что такое следующий номер?" правильно? Нет: "Что такое следующее число, учитывая, что последовательность образует полное утверждение" или: "Что такое следующее число, считая, что это все английские слова", или даже: "Каково следующее число, учитывая, что это это последнее число"; это просто: "Что дальше?" Это настолько открыто, что не подлежит сомнению.

Интересно, согласился ли интервьюер с этой логикой или просто рассердился. Вероятно, последний.

Ответ 17

С#:

foreach(byte b = new byte[]{116,104,105,115,32,105,115,32,99,111,114,114,101,99})
    Console.Write((char)b);

Вывод:

this is correc

Итак, ответ: 116, для 't'.

Ответ 18

В качестве кодировщиков мы ежедневно сталкиваемся с WTF: бескомпромиссные клиенты, API-интерфейсы с мозгом, наш собственный код с прошлой недели... Это просто часть нашей отрасли. Зная, насколько хорошо мы реагируем на эти ситуации, очень полезный критерий занятости, о котором я думаю. Сам вопрос гораздо менее важен, чем то, как вы придумали ответ и оправдаете его.

Ответ 19

Это 116. Мне не нужны твои подсказки. Подсознательно я думаю, что я заметил, что все цифры были в диапазоне 97-122 (программирование BBC Micro 20 лет назад, когда я был ребенком, помог мне запомнить коды ASCII по какой-то причине!). Я не преобразовал каждую букву в голову только сейчас:

>>> "".join(map(chr, [116, 104, 105, 115, 32, 105, 115, 32, 99, 111, 114, 114, 101, 99]))
'this is correc'

Думаю, интервьюер, вероятно, хотел посмотреть, как вы думаете о проблемах, и/или подумал, что в качестве программиста вы можете знать коды ASCII. Но если бы это было для старшей должности разработчика Java, я бы подумал, что было бы более важно спросить вас. Скажем, например, о структурах данных или алгоритмах.

Если они действительно позволят этому продолжаться в течение 20 минут, как вы говорите, они это сделали, они потратили много времени, чтобы они могли использовать оценку ваших навыков развития.

Ответ 20

Если бы последовательность была в шестнадцатеричной форме, я бы мог прочитать символы с первого взгляда со скоростью примерно 1-2 секунды. Я знаю большую часть прописного алфавита с первого взгляда в десятичном виде, а также все контрольные символы (с точки зрения контроля-A-control-Z) и распознают 3, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 19, 21, 26 и 27 по функциям. Я ожидаю, что часть цели состоит в том, чтобы увидеть, интуитивно признает ли заявитель последовательность символов как таковую. 32 имеет большое значение для ASCII.

Ответ 21

Сначала я пошёл с большим количеством ошибок при разрыве кода, ища пары чисел. Это заставило меня поверить, что это просто замена чисел для символов в алфавите. Некоторое время назад я прочитал несколько книг по шифрованию в WW2, а некоторые теории для разрыва кода застряли у меня в голове.

Ответ 22

Последовательность char выглядит так: это коррекция Итак, 1 слева - t... то есть его значение ascii равно 116

Итак, ответ 116

Ответ 23

Правильный ответ, очевидно, 8 8 8 8 8 8 83 80 65 85 84 65 33.