Бред

Ответить в тред Ответить в тред
Check this out!
Аноним 18/05/21 Втр 20:35:00 2469210661
1620567209498.jpg 25Кб, 555x560
555x560
ПРОВЕРЯЕМ, ДЕЙСТВИТЕЛЬНО ЛИ ДВАЧЕРЫ НАСТОЛЬКО ТУПЫЕ, КАК ВСЕ ГОВОРЯТ

Итак, ИТТ - задача из собеседования в кремниевую долину:

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

Допустим, есть дом высотой два этажа и одно яйцо, тогда ответ - 2.

ТРИ УРОВНЯ ЗАДАЧИ, ОТ ПРОСТОГО К СЛОЖНОМУ

1. Два яйца и дом высотой в 100 этажей
2. Три яйца и дом высотой в произвольное число этажей
3. Общая формула для случая с 4-мя и более яйцами. Бонус за простой алгоритм для произвольного числа яиц

>Конкурс на имя самого умного двачера объявляется открытым.




1.
Аноним 18/05/21 Втр 20:36:39 2469211642
бамп
Аноним 18/05/21 Втр 20:36:42 2469211713
>>246921066 (OP)
>ум это способность знать какую то дисциплину
лол
Аноним 18/05/21 Втр 20:37:51 2469212464
бамп
Аноним 18/05/21 Втр 20:38:49 2469213175
>>246921066 (OP)
>задача из собеседования в кремниевую долину

Вся суть всех этих ебнутых собеседований:

> нужны специалисты, которые будут пилить круды и админки для нашего стартапа
> справшиваем хуету про круглые люки, яйца и сколько мячиков помещается в автобус
> удивляемся, почему наши круды говно, лагают и глючат
Аноним 18/05/21 Втр 20:38:55 2469213266
бамп
Аноним 18/05/21 Втр 20:41:35 2469214987
1618082106001.jpg 102Кб, 400x579
400x579
>>246921066 (OP)
> которые разбиваются, если их бросить с определенной высоты.
>Яйца можно выбрасывать из окна и использовать снова, если они не разобьются.
18/05/21 Втр 20:46:31 2469218318
>>246921066 (OP)
>1. Два яйца и дом высотой в 100 этажей
>2. Три яйца и дом высотой в произвольное число этажей
>3. Общая формула для случая с 4-мя и более яйцами. Бонус за простой алгоритм для произвольного числа яиц

Этажи/2 - тестим яйцо. Повторить в верх или в низ в зависимомти от результата.
Аноним 18/05/21 Втр 20:47:35 2469219049
Аноним 18/05/21 Втр 20:48:29 24692197610
Аноним 18/05/21 Втр 20:48:29 24692197711
>>246921831
Сбросил с 50-го - разбилось. Сбросил с 25-го - разбилось, всё яйца закончились, искомый номер был 9.
Аноним 18/05/21 Втр 20:49:55 24692207812
>>246921066 (OP)
Хуйню какую-то написал. Не важно, сколько у тебя яиц, если нужно найти мин. число бросков, стратегия расчёта от этого не изменится. Уже выше написали, высота / 2, а там по результату новая высота / 2.
Аноним 18/05/21 Втр 20:50:47 24692213313
Аноним 18/05/21 Втр 20:51:35 24692218314
Аноним 18/05/21 Втр 20:51:58 24692221615
18/05/21 Втр 20:52:02 24692222316
>>246921977
Это оптимальный алгоритм. Не факт, что каждый раз найдется решение, но можно сузить область поиска. пиздец, такие очевидные вещи зумерам надо пояснять
Аноним # OP 18/05/21 Втр 20:52:38 24692227017
Аноним 18/05/21 Втр 20:53:17 24692232918
>>246922223
Нахуя нужен алгоритм, который находит решение в 2% случаев?
Аноним 18/05/21 Втр 20:54:00 24692238219
>>246922216
И? Это оптимальный вариант найти высоту.

>>246922270
Верно, тралина. Или пруфаешь своим решением, или задача решена.
Аноним 18/05/21 Втр 20:54:27 24692242020
>>246921066 (OP)
Тред не читал, в математике и пограмировании ничего не понимаю. Задача стоит "Найти минимальное число бросков, за которое можно вычислить эту высоту":
Два броска. Кинули с третьего, яйцо не разбилось, кинули с четвертого - разбилось.
18/05/21 Втр 20:56:08 24692253721
>>246922270
>>246922329

Может есть еще чуть более оптимальный чем этаж/2 но 100% решения нет.
Аноним 18/05/21 Втр 20:56:32 24692256622
>>246921066 (OP)
Один бросок. Они разобьются при падении с любой высоты.
Аноним 18/05/21 Втр 21:01:07 24692285923
Начинаешь с 2 яиц и произв. числа этажей.
Кидаем с 10. Если разбилось, берём второе яйцо и с 1 по 9 тестим. Если уцелело, идём на 20. Уцелело? Идём на 30. И т.д. пока не разобьется. Изи алгоритм.
Если кол-во яиц x >= log2(n), где n - кол-во этажей, то чекаем этаж по принципу двоичного кодирования, т.е. n/2 и кидаем. Если уцелело, то промежуток от n/2 до n делим на 2, кидаем и повторяем алгоритм.
Если кол-во яиц < логарифма, то скачем по второму алгоритму, пока не останется одно яйцо. А там уже в промежутке оставшемся по первому алгоритму находим

Мимочмоха, не прогер.
Аноним 18/05/21 Втр 21:04:28 24692306424
>>246921066 (OP)
Ебашим яйцо с кол-ва этажей на 2, если разбилось, забиваем на те, что выше, не разбилось - ниже. Повторяем пока не очтанется одно яйцо. Далее тупо перебираем по очереди этажи, на которые не забили
18/05/21 Втр 21:04:55 24692308625
>>246921066 (OP)
>1. Два яйца и дом высотой в 100 этажей
Бросаешь первое йацо с 50-ого - если разбилось - начинаешь бросать с 1-ого этажа второе йацо до этажа разбития. Если не разбилось, то бросаешь второе с 51 до этажа разбития. В итоге сложность O(n/2), в худшем случае 49 бросков. Вряд ли есть вариант оптимальнее. Над остальными уровнями задачи думать лень.

мимо прогер 12 лет опыта.
Аноним 18/05/21 Втр 21:05:15 24692310926
>>246923064
а ты докажи что это оптимальное решение
Аноним 18/05/21 Втр 21:06:21 24692317227
Аноним 18/05/21 Втр 21:06:42 24692319928
18/05/21 Втр 21:07:06 24692322429
Аноним 18/05/21 Втр 21:07:15 24692323730
Вы где видели яйца, которые нельзя разбить с первого этажа?
Аноним 18/05/21 Втр 21:10:02 24692341431
1. Не существует решения
2. Не существует решения
3. Тут вообще условие кривое
Аноним 18/05/21 Втр 21:10:16 24692342732
18/05/21 Втр 21:10:47 24692347033
>>246923172
>>246923172
Да, по сути бинарный рекурсивный поиск (я не дописал в >>246923086, что можно продолжить и искать бинарно пока первое йацо не бито). Но для первого условия задачи (два йаца сто этажей) худший кейс - 49 бросокв.
Аноним 18/05/21 Втр 21:12:06 24692353534
>>246923414
Решение есть и оно простое, можно на калькуляторе в запросто посчитать даже для нескольких яиц и дохуища этажей любой случай в одну строчку.
>>246923470
Не сагай мразь.
Аноним 18/05/21 Втр 21:12:07 24692353835
>>246921977
>Сбросил с 50-го - разбилось. Сбросил с 25-го - разбилось, всё яйца закончились, искомый номер был 9.
НУ значит еще можно яиц в магазине купить, хули ты такой тупой?
Аноним 18/05/21 Втр 21:13:19 24692362136
Какие же вы дебилы, разбил яйца вам об тупые головы.
Аноним 18/05/21 Втр 21:13:46 24692365337
>>246923470
>Но для первого условия задачи (два йаца сто этажей) худший кейс - 49 бросокв.
Какие нахуй 49? Если кидать через 10 этажей, а как разобьется то проверять вторым яйцом по этажу, то в самом хуёвом случае, когда нужный этаж 100, потребуется 18 бросков. На 10, 20, 30, 40, 50, 60, 70, 80, 90, 91, 92, 93, 94, 95, 96, 97, 98 и 99 этажах.
Аноним 18/05/21 Втр 21:14:00 24692366438
>>246923535
Есть, но в первом должно быть минимум 7 яиц,а во-втором этажей максимум 8
Аноним 18/05/21 Втр 21:16:17 24692380439
>>246921066 (OP)
Уже был в таком треде пол-года кажись назад.
Вот решение для двух яиц и 100 этажей:
первое яичко скидываем поочередно с 14 этажа, потом на 13 этажей выше, потом на 12 этажей выше, потом на 11 и так до 99 когда яичко разобьется мы найдем промежуток
Вычислив промежуток, например, пятый, мы поочередно скидываем второе яичко с минимального по максимальный этаж, пока оно не разобьется

формулу сами можете написать
Для остальных случаев решение аналогичное
/тред
Аноним 18/05/21 Втр 21:17:05 24692384840
>>246923804
>мы поочередно скидываем второе яичко с минимального по максимальный этаж
этого промежутка
быстрофикс*
18/05/21 Втр 21:17:17 24692386141
Не ведитесь, эту хуету лет 10 не спрашивают. Это пятикратно-переваренный кал, все кто хоть месяц провёл на литкоде или всяком таком подобном дне грокают эти задачки на раз. А этого петушару не слушайте, он вас промаринует 100 постов и съебётся.
https://datagenetics.com/blog/july22012/index.html

Мимо-ходил в гугл в Дублине, остановился на фейсбуке там-же

Сажи дауну
Аноним 18/05/21 Втр 21:17:27 24692386742
>>246922859
А, забыл про произвольное число этажей.
Берём корень из n и округляем в большую сторону, например для 300 шаг будет 18. И работаем по прежним чертежам
Аноним 18/05/21 Втр 21:17:38 24692388043
>>246921066 (OP)
кол-во яиц - 1 определили сколько попыток.
Если попыток > 0
Oпределяем минимальную высоту. высота/2 далее в зависимости от результата и кол-ва попыток.
С последним яйцом как дауны поднимаеся либо от 1го этажа либо от последней высота/2 с которой не разбилось.
Аноним 18/05/21 Втр 21:18:13 24692392044
>>246922859
Да, примерно так.
Но если улучшить этот способ, то самый оптимальный вариант будет такой - >>246923804
Аноним 18/05/21 Втр 21:18:45 24692395845
>>246921066 (OP)
>собеседования в кремниевую долину
А нахуй оно нужно? Там же кодинговые мартышки обитают. Зачем им мыслить в реальном времени, решать какую-то хуйню? Без негатива даже
18/05/21 Втр 21:18:59 24692397546
>>246923653
Нихуя. У тебя матожидание все равно будет стремиться к большему количеству бросков, даже с учетом того, что худший случай меньше бросков.
Аноним 18/05/21 Втр 21:19:42 24692402347
>>246923958
У этих кодинговых мартышек зп от 100к$ в год. Ты столько за всю свою жизнь не сможешь зарабоать, пидорашка.
Аноним 18/05/21 Втр 21:20:51 24692410648
18/05/21 Втр 21:21:28 24692414449
>>246924023
поржал с нищей спидеращки, ббгггг.


мимо держу галеру с нищими спидоранами и хахлами
Аноним 18/05/21 Втр 21:22:08 24692417950
.jpg 111Кб, 1027x1080
1027x1080
>>246921066 (OP)
Оче просто:
Кидаем окно с первого этажа - оно разбивается. Вот и выяснили.
Аноним 18/05/21 Втр 21:22:15 24692418451
Ответ на первый вопрос. Если нам нужен гарантированный ответ, самый быстрый вариант - когда мы, начав со второго этажа, бросаем яйца через этаж (2ой, 4ый, 6ой, и т. д.) Когда яйцо разбивается, мы возвращаемся на этаж назад - и бросаем второе.
Аноним 18/05/21 Втр 21:22:54 24692422252
>>246924106
То, что они умнее тебя во столько же раз, во сколько больше их зп и соотвественно умения.
Аноним 18/05/21 Втр 21:22:58 24692422653
>>246924179
Кидаем яйцо, конечно же, бля*
Аноним 18/05/21 Втр 21:24:21 24692431854
>>246921066 (OP)
Минимально потребуется два броска. Первым мы рандомно угадываем нужную высоту, вторым кидаем на 1 этаж выше, оно разбивается, максимальная высота найдена.

Если пытаться в алгоритмы, то в первом случае прост кидаем яйцо на значения кратные двум, пока не разобьётся, а вторым кидаем на 1 меньше того, где разбилось. Второй аналогично, но кратное трём. Третий думаю уже поняли.
Аноним 18/05/21 Втр 21:25:07 24692436555
>>246921066 (OP)
Как эта задача выглядит ИРЛ определи с какого этажа яйцо разобьется. Бить яйца нельзя.
Аноним 18/05/21 Втр 21:25:36 24692439656
Воруя яйца, ибо не ел неделю, и убегаю.
мимо нищий рабсиянин
Аноним 18/05/21 Втр 21:26:21 24692444057
>>246924318
>Если пытаться в алгоритмы, то в первом случае прост кидаем яйцо на значения кратные двум
У тебя два яйца, кидай на кратные трем.
Кинул с третьего - разбилось.
Кидаешь со второго - разбилось, значит искомый этаж - первый.
Аноним 18/05/21 Втр 21:27:14 24692451058
Аноним 18/05/21 Втр 21:29:15 24692464459
пусть n этажей k яиц
берем бросаем методом разделяй и властвуй k - 1 раз
в самом хуевом случае если все k - 1 яиц разбились остается интервал n / (2 ^ (k - 1)). опять же в самом хуевом случае в конце этого интервала искомый этаж, тогда понадобится n / (2 ^ (k - 1)) - 1 бросков.
итого (k - 1) + n / (2 ^ (k - 1)) - 1 бросков в худшем случае
естественно вся эта хуйня работает если в справедливо раз n больше чем k, нужно рассмотреть отдельные случаи
Аноним 18/05/21 Втр 21:31:04 24692477560
>>246924222
Про говночистов по дворце Путина не в курсе, школьник? Сколько у них там зп?
Аноним 18/05/21 Втр 21:31:55 24692482661
>>246921066 (OP)
Допустим у тебя N этажей и M яиц.
Перебираем этажи здания снизу с переодичностью M если яйцо не разбилось, то высота лежит выше, если разбилось, то мы нашли промежуток длинной M в котором находится искомая высота. Дальше итерируем на найденом промежутке, так оставшихся яиц хватит.
Аноним 18/05/21 Втр 21:32:02 24692483462
>>246921066 (OP)
Чего-то я не вдупляю. Я могу перейти на любой этаж?
Аноним 18/05/21 Втр 21:32:37 24692487863
К сожалению я не могу ответить на этот вопрос в рамках договора о неразглашении информации
Аноним 18/05/21 Втр 21:35:04 24692506464
>>246924834
Если так, то в чем проблема, всегда требуется 2 броска.
Кидаем с первого этажа, замеряем время до падения, предположим 7 секунд. Идем на последний, кидаем, замеряем. 70 секунд. Делим время последнего этажа на первый, т.е. 70/7 получаем 10 этажей. Можно чутка округлить, поскольку бросаем с половины этажа, а не с начала.
Аноним 18/05/21 Втр 21:35:06 24692506665
>>246921066 (OP)
Нужно найти высоту с которого яйцо разобьется?
Ну тогда везде 1
Аноним 18/05/21 Втр 21:36:03 24692513466
Аноним 18/05/21 Втр 21:43:12 24692562567
1621349890716.png 163Кб, 845x693
845x693
57839201.jpg 47Кб, 1080x538
1080x538
Ну раз тред умер, то вот табличка с ответами и пример решения для 4 яиц, тут расчет сколько можно пропарсить этажей за 40 попыток
Аноним 18/05/21 Втр 21:44:06 24692568668
>>246921066 (OP)
бросаем яйцо с серединного этажа, если разбилось, то кидаем его с с этой высоты, поделенной на два, если не разбилось, то с соответственно, в середине между верхним этажом и изначальным. повоторяем, пока не останется одно яйцо, которое мы докидываем единичками поднимаясь от наивысшей позиции, откуда яйцо не разбивалось
Аноним 18/05/21 Втр 21:45:12 24692577369
>>246925625
Хуита какая то, у тебя же всегда будет получаться озф и ты не будешь знать с какого конкретно этажа начинается >пук
Аноним 18/05/21 Втр 21:46:58 24692588670
Аноним 18/05/21 Втр 21:47:23 24692591771
>>246924834
Да, тебе нужно найти этаж с которого яйцо при падении разобьется. Идешь на первый этаж - бросаешь - яйцо разбилось? да ты нашел нужный этаж высоту, нет ты идешь на второй этаж и бросаешь оттуда. Твоя задача придумать способ чтобы не обходить каждый этаж
Хотя я хуй знает как это сделать, тут предлагают бинарный поиск но как он тут помогает, если условие составлено так что этаж может быть рандомным
Аноним 18/05/21 Втр 21:48:01 24692596872
>>246925917
Просто идешь на последний
Аноним 18/05/21 Втр 21:51:08 24692618273
>>246925968
>которые разбиваются, если их бросить с определенной высоты
Ну я так понял это значит что яйцо разобьется только если его бросить, например, с 50 этажа, а вот с 51 уже не разобьется.
Аноним 18/05/21 Втр 21:54:02 24692640974
>>246926182
Ну и причем тут тогда этажи?
Аноним 18/05/21 Втр 21:54:18 24692643175
>>246921066 (OP)
Чет хуйня какая-то, не привязанная к реальности. Лови реальную задачу. Тебе нужно рассчитать движение тела в произвольном сильном гравитационном поле согласно ОТО, какую систему уравнений ты засунешь в ODE solver? Гравитационными волнами и вращением можно пренебречь
Аноним 18/05/21 Втр 21:56:08 24692656076
>>246925917
Бинарный поиск единственное, что тут можно.
А двух людей можно использовать? Или сетку на балкон растелить, чтобы поймать
Аноним 18/05/21 Втр 21:56:44 24692659177
>>246926431
Это что, требуется для веб дизайнеров такое?
Аноним 18/05/21 Втр 21:57:13 24692663278
Аноним 18/05/21 Втр 21:58:42 24692673879
Просто отвечаю что я стартапер-визионер со своей миссией, а их задачки даунские пусть себе в жеппу засунут.
Аноним 18/05/21 Втр 21:59:02 24692677180
>>246926591
Да, нарисовать систему Гаргантюа из интерстеллара с помощью html5
Аноним 18/05/21 Втр 21:59:14 24692679181
>>246926560
А смысл бинарного поиска? Ну что тебе даст что яйцо упавшее с 50 этажа не разбилось? Что нужно идти вниз? Или вверх? Ты не будешь сужать поиск. Просто исключать этаж при каждом броске, но такого эффекта ты добьешься если будешь просто подряд перебирать этажи
Аноним 18/05/21 Втр 22:01:31 24692697982
>>246921066 (OP)
Бинарный поиск по этажам пока не останется одна попытка. Когда остается одна попытка, кидаем с нижнего уровня последнего окна бинарного поиска до верхнего с шагом в 1 этаж. В таком случае мы не проебем последнее яйцо так и не узнав ответ, как другие дауничи из этого треда.
Аноним 18/05/21 Втр 22:02:03 24692702683
>>246926791
>А смысл бинарного поиска?
Дает максимальный процент поиска
Аноним 18/05/21 Втр 22:03:34 24692715384
Думаю тут ответ из комбинаторики, типа сколькими способами можно выбрать k из n. Анон какой то вроде писал.
но возможно оп пидрила затралил нас всех
Аноним 18/05/21 Втр 22:04:42 24692723585
>>246927153
>но возможно оп пидрила затралил нас всех
Загуглите задачу и все. Если ее нет в инете, оп врет
Аноним 18/05/21 Втр 22:04:49 24692723986
>>246927026
Да? Не знал. Я думал он просто позволяет сузить область поиска в отсортированных данных отсекая с каждым шагом половину. Но если есть доказательство что так ищется лучше, то не буду спорить
Аноним 18/05/21 Втр 22:05:18 24692727487
>>246921317
Это задача на понимание методов оптимизации
тащем то понимать этц хуйню взрослому нормальному человеку не обязательно, исключительно ит фича
Аноним 18/05/21 Втр 22:08:05 24692745088
>>246927235
Загуглил, оп неправильно условие задачи дал
Дано 100-этажное здание. Если яйцо сбросить с высоты N-го этажа (или с большей высоты), оно разобьется. Если его бросить с любого меньшего этажа, оно не разобьется. У вас есть два яйца. Найдите N за минимальное количество бросков.
Вот эту часть он не написал. Пидар
Аноним 18/05/21 Втр 22:12:41 24692779189
>>246927450
Хмм, тогда кидаем с половины, оставшуюяс часть прочесываем с первого этажа
Аноним 18/05/21 Втр 22:14:47 24692794890
>>246921066 (OP)
>1. Два яйца и дом высотой в 100 этажей
семь?
Аноним 18/05/21 Втр 22:14:51 24692795891
Аноним 18/05/21 Втр 22:15:02 24692796992
>>246921066 (OP)
Бинарный поиск, число бросков O(n) = log2(n)
/thread
Аноним 18/05/21 Втр 22:19:10 24692829693
>>246921066 (OP)
Ты че, еблан? Если яйцо уронить с высоты метра - оно разобьется. При чем тут этажи тогда нахуй? Отсоси.
Аноним 18/05/21 Втр 22:19:58 24692835294
Аноним 18/05/21 Втр 22:20:06 24692836395
>>246921066 (OP)
ответ: 1 бросок. берем самый высокий этаж и кидаем оттуда
/thread
Аноним 18/05/21 Втр 23:08:22 24693214796
>>246921066 (OP)
Хинт к решению - треугольные числа, n(n+1)/2.
В таком треугольнике любая точка достигается за минимум ходов.
Следующий уровень - треугольники, где каждая линия тоже представлена треугольником, и так до k уровней вложенности.
Аноним 18/05/21 Втр 23:12:33 24693247597
>>246921066 (OP)
Вы что тут все тупые?

Просто кидаете яйцо с первого этажа и по возрастающей, пока оно не разобьется.

Пиздец, что я тут делаю с этими имбицилами.
Аноним 18/05/21 Втр 23:21:57 24693322498
>>246932475
Там требуется минимизировать число бросков, в твоём случае оно будет 99. Можно найти за 14.
Аноним 18/05/21 Втр 23:23:09 24693332699
>>246933224
Минимизировать максимальное
Быстрофикс
Аноним 18/05/21 Втр 23:24:41 246933432100
>>246927969
Не сработает - например, для 2 яиц и высоты в 15.
Аноним 18/05/21 Втр 23:25:32 246933486101
Аноним 18/05/21 Втр 23:26:28 246933547102
>>246921066 (OP)
Это чисто алгоритмические задачи, мне лень.
Аноним 18/05/21 Втр 23:33:13 246934086103
>>246933486
Бросить первое яйцо с 14. Если разбилось, то искать с 1, если нет - то бросить с 27, и т.д.

Говорю же, треугольные числа надо применять >>246932147
Аноним 18/05/21 Втр 23:35:56 246934301104
Настройки X
Ответить в тред X
15000
Макс объем: 20Mб, макс кол-во файлов: 4
Кликни/брось файл/ctrl-v
X
Ваш шидевор X
Стикеры X
Избранное / Топ тредов