LINUX.ORG.RU
ФорумTalks

Задачи с собеседований на интеллект.

 , ,


12

2

Подкиньте еще логических задач с собеседований. Примеры таких:

  1. Встретились два старых друга, не видевшиеся уже довольно долго. Оба когда-то вместе учились на Физтехе. Вот их диалог: — Я слышал, у тебя дети появились. — Да, три сына. — И сколько им лет? — Ну... В сумме — тринадцать! — Хм... Загадками хочешь говорить? Ну ладно. И что еще можешь сказать? — Если возрасты перемножить, получится как раз столько, сколько окон у вооон того дома. — Но этого всё еще мало! — Могу добавить, что мой старший сын — рыжий. — Ну теперь совсем другое дело. Им ... (далее следует ответ) — Правильно! Сколько же лет им было?

  2. Три мудреца поспорили, кто из них самый умный и обратились к четвертому, чтобы он их рассудил. Судья сообщил мудрецам, что у него есть три белых колпака и два черных, после чего надел каждому белый колпак на голову так, чтобы каждый видел только колпаки двух других мудрецов. Мудрецам требовалось угадать цвет колпака на собственной голове. Через некоторое время один из мудрецов сообщил, что у него на голове белый колпак и выиграл состязание. Как он смог догадаться?

  3. Человек находится в ж.д. составе, замкнутом в кольцо. Случайным образом в каждом вагоне включен или выключен свет. Окна закрыты. Человек может только переходить из вагона в вагон и включать и выключать свет. Как ему узнать длину состава? UPD: У него с собой никаких предметов, ничего что бы он мог оставить, нельзя портить вагоны и испражняться в них.

  4. Жил-был султан, и был у него совет из множества мудрецов. Решил он, подсократить их, выбрать самых умных, а остальных казнить. Для этого вызвал их и сказал: «Сегодня вас всех посадят в темницу, завтра завяжут глаза, выведут на площадь у дворца, каждому наденут на голову черный или белый колпак, построят в шеренгу, что бы каждый видел всех перед ним и никого за ним, после чего всем развяжут глаза. Каждого, начиная с последнего, спросят, какой на нем колпак, если он не угадал - его казнят». Что могли придумать мудрецы, что бы минимизировать свои потери?

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

  6. У вас есть стоэтажная башня и два идентичных стеклянных шара. Как за минимальное число попыток определить наименьший этаж, при падении с которого шар разбивается?

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

  8. В тюрьме сидят 10 заключенных, каждый — в одиночной камере. Общаться между собой они не могут. В один прекрасный день начальник тюрьмы объявил им, что предоставляет всем шанс выйти на свободу на следующих условиях:

    «В подвале тюрьмы есть комната с переключателем, имеющим два состояния: ON и OFF («вкл.» и «выкл.»). Каждую ночь я буду приводить в эту комнату ровно одного заключенного (выбирая его абсолютно случайно) и через некоторое время уводить. Находясь в комнате, каждый из вас может либо изменить положение переключателя, либо ничего с ним не делать. Персонал тюрьмы трогать этот переключатель не будет. В какой-то момент один из вас (любой) должен понять, что в комнате побывали все заключенные, и сообщить об этом. Если он окажется прав — всех отпустят, если ошибется — все вы навсегда останетесь в тюрьме. Я обещаю, что в комнате побывают все заключенные, причем каждого будут приводить туда неограниченное число раз».

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

    Могут ли заключенные гарантированно выйти на свободу, и если да, то как им этого добиться?

Кто какие еще знает? Составляем коллекцию.



Последнее исправление: CatsCantFly (всего исправлений: 8)

Ответ на: комментарий от Sadler

Т.к. вагонов определённо конечное число, а времени у нас неограниченное количество

Это некорректное обращение с бесконечностями.

Xellos ★★★★★
()
Ответ на: комментарий от backburner

Я не понял, что дает информация об окнах.

Если считаем окон с одной стороны здания, то их типично X*Y, всего окон обычно 2*(A+B). Возможно, от этого надо плясать.

Sadler ★★★
()
Ответ на: комментарий от CYB3R

В том, чтобы правильно решить задачу.

v9lij ★★★★★
()

— Ну... В сумме — тринадцать!

так только мудак отвечает. в итоге у него 0 сыновей, с таким тяны не связывают судьбу

YLoS ★★★
()
Ответ на: комментарий от Xellos

Это некорректное обращение с бесконечностями.

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

Sadler ★★★
()
Ответ на: комментарий от v9lij

Да, поленился я брутфорсить. И проверять лень, так поверю.

NightSpamer
()
Ответ на: комментарий от Sadler

Число их не изменится, но оно сколь угодно велико. Поэтому ходить мы будем конечное время, но сколь угодно долгое.

Xellos ★★★★★
()
Ответ на: комментарий от Sadler

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

backburner
()
Ответ на: комментарий от lodin

Ага, а потом такой работник, столкнувшись с реальной задачей, не будет разбираться, а насрёт в коде и выкрутит ворнинги при компиляции.

Приведи пример реальной задачи, эквивалентной тому поезду.

HeipaVai1o
()
Ответ на: комментарий от unt1tled

А если бы эти мудрецы сидели на лоре

Три компьютера, один с проприетарным драйвером nvidia, второй с fglrx, третий с Intel, выдали случайным образом Alyssa, Novell-ch и svobodka_fighter. У Alyssa игорь не заработал и он что-то ворчал про неправильного производителя карты, у Novell-ch все работало, но он все же был недовольный, svobodka_fighter вещал про кривые проприетарные игры. Кому достался какой драйвер?

goingUp ★★★★★
()
Ответ на: комментарий от Xellos

Поэтому ходить мы будем конечное время, но сколь угодно долгое.

Но для каждого конкретного случая задача будет решена. Что и требовалось.

Sadler ★★★
()
Ответ на: комментарий от lolset

Кстати, запостите кто-нибудь ту копипасту с мистером Фейнманом.

HeipaVai1o
()
Ответ на: комментарий от lolset

у здания только 2 стороны? Я то думала что 4.

ОК, наводящий вопрос. У здания со всех 4 сторон одинаковое число окон?

Sadler ★★★
()

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

CatsCantFly
() автор топика
Ответ на: комментарий от lolset

Там же не лампы накаливания, они сто раз остынут, пока ходишь.

CatsCantFly
() автор топика
Ответ на: комментарий от alozovskoy

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

grem ★★★★★
()
Ответ на: комментарий от CatsCantFly

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

Неа, не так.

Bad_ptr ★★★★★
()

Самая клёвая задачка про мудрецов (и пр.), которую я когда-либо слышал (не на интервью):

В тюрьме сидят 100 узников. Очень умных, с великолепной памятью.

В один прекрасный день их выводят в тюремный двор и объявляют им следующее. Их будут заводить в специальную комнату, по одному. В этой комнате стоят 100 коробок. В каждой коробке лежит бумажка с именем одного из них (причём каждое имя в одной из коробок таки лежит) — но нет никакого способа определить, какое именно, не открывая коробки.

Каждый узник имеет право открыть 50 коробок — любых, какие ему захочется. После этого его выведут через другую дверь, и до конца дня он с остальными не встретится. Перед уходом узник обязан привести комнату в то же состояние, в котором он её обнаружил — то есть, коробки должны остаться закрытыми, все бумажки должны лежать в тех же коробках, никаких пометок оставлять нельзя, и так далее.

Если все узники — до единого — найдут бумажки со своими именами, то их всех отпустят. Если хотя бы один НЕ найдёт своё имя — то всех казнят.

У них есть время выработать стратегию. Как именно им действовать, чтобы повысить вероятность спасения хотя бы до 30%?

Замечания.

1) У задачи ЕСТЬ решение.

2) Задача честная. То есть, не надо искать какой-то заковыристый способ передать информацию следующим. Примите как данность, что его не существует.

Miguel ★★★★★
()
Ответ на: комментарий от Miguel

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

Зеки такие сказали: «Хорошо, ладно. Лучше умереть, чем прослыть бесчестным!»

HeipaVai1o
()
Ответ на: комментарий от Sadler

И вообще друг у него ничего не спрашивал, потому что тот у него еще в институте сотку денег занял и не отдает. И он придумал всё это в своем воображении.

v9lij ★★★★★
()
Ответ на: комментарий от HeipaVai1o

Стражники достаточно умные, чтобы одна лишь попытка передать информацию привела к смертельной дисквалификации узников.

Miguel ★★★★★
()

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

Бросить лом в очко унитаза, очевидно.

morse ★★★★★
()
Ответ на: комментарий от Miguel

Стражники достаточно умные, чтобы одна лишь попытка передать информацию привела к смертельной дисквалификации узников.

А смертельно дисквалифицируют всех или только нарушившего?

Sadler ★★★
()
Ответ на: комментарий от Sadler

ну знаешь, если смотреть с 1 стороны тока и считать то скорее всего было 6 этажей в здании и 6 рядов окон, вот ему было и не достаточно данных, поэтому наверно окон то 36. а узнав что один старший, он реших, что старшему 9, а остальным по 2 года...

lolset
()
Ответ на: комментарий от lolset

если смотреть с 1 стороны тока и считать то скорее всего было 6 этажей в здании и 6 рядов окон

В задаче спрашивалось, сколько окон у дома, а не сколько окон он видит.

Sadler ★★★
()
Последнее исправление: Sadler (всего исправлений: 2)
Ответ на: комментарий от Miguel

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

CatsCantFly
() автор топика
Ответ на: комментарий от Sadler

Плюсую.
Да и не указано, в нашей ли Вселенной это происходит. Может у них там можно все четыре стороны видеть.

v9lij ★★★★★
()
Ответ на: комментарий от backburner

Я не понял, что дает информация об окнах.

Окна и т.д. сообщают, сколько информации недостаточно и сколько достаточно для однозначного ответа. Это позволяет отсеять часть вариантов.

lodin ★★★★
()
Ответ на: комментарий от CatsCantFly

первый открывает 50 коробок и раскладывает их по именам в порядке

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

Sadler ★★★
()
Последнее исправление: Sadler (всего исправлений: 2)
Ответ на: комментарий от CatsCantFly

первый открывает 50 коробок и раскладывает их по именам в порядке

Комнату нужно оставить в том же состоянии, в каком была.

backburner
()

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

Хороший сюжет для простенького инди-хоррора.

risenshnobel ★★★
()
Ответ на: комментарий от Miguel

Очень умных

Заходит первый, открывает первые 50 коробок, кодирует в уме имена в массив json, потом сжимает gzip, потом бинарную строку использует как количество секунд. Ждет это количество секунд. Второй делает то же самое с коробками 51-100. Остальные декодируют, и - готово!

goingUp ★★★★★
()

У меня другой вопрос. Как можно научиться решать подобные [5.1] задачи? Собственно, с детства ненавидел олимпиадные задачи, они все, блин, разные, для каждой свой уникальный тип решения.

Xellos ★★★★★
()
Ответ на: комментарий от lolset

Вы не в правильном направлении думате. Геометрия дома вообще значения не имеет, как и особенности построения фразы «сколько окон у вооон того дома».

backburner
()
Ответ на: комментарий от backburner

Да я вообще не понимаю, что все этот дом мучают до сих пор, если кто-то уже на второй странице рассказал ответ.

CatsCantFly
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.