LINUX.ORG.RU

Реальные вопросы на собеседовании

 


4

3

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


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

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

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

Я так понял, что связи вообще нет, и каждый должен прийти к оптимальной стратегии сам, а раунд всего один.

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

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

Ответ и разбор задачи про монетку

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

alysnix ★★★
()
#inlude <stdio.h> 

struct some_struct {
    char a;
    char b;
    char c;
    char d;
};

int main(int argc, char* argv[])
{
   int ret = 2;
   ret += &(((struct some_struct *)0)->b);
   return ret;
}

Что вернет? Что случится?

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

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

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

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

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

ты поступил по свински.

Хаа, формулировка у задачи вообще другая. Так что сходить ролик глянуть все равно придется — хотя бы до момента, когда ее там нормально сформулируют.

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

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

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

Извиняюсь, я просто «не говори ответ», прочитал как «ну говори ответ», поэтому и написал.

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

а не, вру. С 14 бросать, потом с 14+13=27, потом с 27+12=39 и т.д. Если разобьется на каком-то, то вернуться на предыдущий шаг и сбрасывать с инкрементом 1. Максимальное число попыток – 14.

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

Я знаю, сам потом увидел, но отредактировать уже не могу.

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

Бросить с первого затем с третьего если разбился то второй кинуть со второго. Если не разбился то кинуть с четвёртого затем с шестого если разбился то с пятого и так далее. То есть поочерёдно кидать на 1 этаж выше, затем на два если разбился вторым проверять предыдущий. Второй шар всегда будет указывать на этаж где кидых не приводит к погибели. По другому вроде никак разбиться может и на 1 этаже. Тоесть чередовать +1 этаж +2 этажа и так далее

LINUX-ORG-RU ★★★★★
()
Ответ на: комментарий от kirk_johnson

Там еще в «include» опечатка. :)

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

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

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

Ответ и разбор задачи про монетку

Я почти угадал думал в правильном направлении на счет длин серий.

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

По другому никак. Ну или я не знаю как. Не совсем линейная например если смертельный этаж 26 то нужно 8 проверок, если этаж 58 то нужно 19 проверок, если этаж 89 нужно 29 проверок

LINUX-ORG-RU ★★★★★
()
Ответ на: комментарий от LINUX-ORG-RU

Чуть выше привели пример. Я придумал примерно то же самое, но не додумался до прогрессии и просто разделил 100 на 10. В итоге у меня получается максимум 18 бросков, а кошерное решение за 14.

kirk_johnson ★☆
()
Последнее исправление: kirk_johnson (всего исправлений: 2)

Задавайте только реальные вопросы с собеседования.

Почему вы выбрали именно нашу компанию?
Почему уволились с предыдущего места работы?
Кем вы себя видите через пять лет?

Для женщин: Когда собираетесь рожать и уходить в декрет?

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

Не сработает, он кидает шар с 14 этажа == разбился осталась 1 попытка узнать какой точно этаж смертельный кинув ещё 1 шар. А у него потом там несколько декрементов по 1. Решение перечит правилам. Это если бы разбивать шары можно было бы сколько хочешь, а разбить можно только два раза. Ибо у тебя два шара, разбил оба и кидать будет просто нечего

LINUX-ORG-RU ★★★★★
()
Последнее исправление: LINUX-ORG-RU (всего исправлений: 2)
Ответ на: комментарий от LINUX-ORG-RU

Не сработает, он кидает шар с 14 этажа == разбился осталась 1 попытка узнать какой точно этаж смертельный кинув ещё 1 шар. А у него потом там несколько декрементов по 1. Решение перечит правилам.

У него несколько инкрементов. Это важно :)

kirk_johnson ★☆
()
Последнее исправление: kirk_johnson (всего исправлений: 1)
Ответ на: комментарий от PeleWin

Да, другая. Просто я про неё знал, а эта новая для меня.

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

Учитывая, что через линкер можно задать произвольную функцию main, например startmysuperprogramm, то можно создать main с любым числом аргументов

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

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

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

ребята, прекратите тупить. Правильный ответ 14.

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

Пусть m – оптимальное значение.

Значит с каждой i-той попыткой броска, интервал между этаж_i и этаж_i-1 не должен быть больше, чем m-i, дабы не выйти за пределы оптимального значения m. То есть мы имеем задачу

минимировать m\in Z при условии: sum_{i=0}^{m-1} (m-i) ≥100

получаем m=14

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

Чем стрипнутый отличается от не стрипнутого примерно человек пять.

Вы там с 5-го Б набираете? Вопросы уровня «в чем разница между отладочной и релизной сборкой».

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

Такими темпами количество аргументов вообще не ограничено, так как C ABI распространяется только на имя функции. Вызывать левыми аргументами конечно UB, но тем не менее.

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

Вы там с 5-го Б набираете? Вопросы уровня «в чем разница между отладочной и релизной сборкой».

Я нашел некую корреляцию между уровнем знаний, и являлся ли человек embeddщиком.

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

Разве core dump генерируется всегда? На маке да, но на винде и лине вроде только по предварительному запросу.

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

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

SR_team ★★★★★
()
Последнее исправление: SR_team (всего исправлений: 1)
Ответ на: комментарий от RazrFalcon

Разве core dump генерируется всегда? На маке да, но на винде и лине вроде только по предварительному запросу.

Это настраивается.

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

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

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

Я надеюсь с Эдиком она не совпадает?

В обратную сторону. В смысле, если чувак занимался embedded, то чувак нихрена не знает.

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

кеш (key-value)

Словосочетание key-value к слову cache имеет отношение только у веб-макак. В таком контексте это бред. Кроме того, непонятно о чем вообще «вопрос». О структурах данных? В разрезе С++? О синхронизации? О кешах процессоров? Да это высер просто чей-то, а не вопрос.

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

Да, я про это же. Болезнь «я пишу на С - значит я царь и бог программирования» очень распространена.

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

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

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

Ну вообще он прав, потому что характеристик кеша никто не дал. Он read-mostly? Он mixed? Насколько критичны задержки? Чего оптимизируем, память или скорость доступа?

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

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

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