
Big_Shark
12.12.2017
22:14:50

Ad
12.12.2017
22:15:08
Не задание, а мечта.
Акула, а ты чего на иос наехал?

Sergey
12.12.2017
22:16:00
помню несколько лет назад было креативное тестовое

Google

Sergey
12.12.2017
22:16:07
надо было головоломку решить
которая состоит из 7 уровней
там через всякие веб уязвимости проходить дальше надо было

Ad
12.12.2017
22:17:01
Собеседование в АНБ?

Sergey
12.12.2017
22:17:30
та вроде обычная контора, но задание креативное)

Vladislav
12.12.2017
22:17:54

Evgenii
12.12.2017
22:18:07

Vladislav
12.12.2017
22:18:22
и это надо уметь
ну или найди самый длинный палиндром в строке)))

Evgenii
12.12.2017
22:18:55
Есть такое

Ad
12.12.2017
22:19:43
Половина сходу отсеется, потому что не знает, что это такое

Vladislav
12.12.2017
22:19:57
айтишнички))()()

Evgenii
12.12.2017
22:20:07
В доке от таком ни слова

Google

Vladislav
12.12.2017
22:20:33
я на собеседование давал бы решить за 30 мин такую задачу:
надо сделать структуру данных, в которой get, set, getRand работают за O(1). getRand возвращает число из множества с шансом 1/N

Вадим
12.12.2017
22:24:30

Arky
12.12.2017
22:25:47

Вадим
12.12.2017
22:26:20

Sergey
12.12.2017
22:26:32

Vladislav
12.12.2017
22:26:47
нет

Вадим
12.12.2017
22:27:06

Vladislav
12.12.2017
22:27:15
array_rand не работает за o(1 )

Arky
12.12.2017
22:27:53

Вадим
12.12.2017
22:28:58

Vladislav
12.12.2017
22:29:42

Arky
12.12.2017
22:29:58

Вадим
12.12.2017
22:30:27

Arky
12.12.2017
22:33:16

Вадим
12.12.2017
22:34:32

Sergey
12.12.2017
22:38:37
ну и insert/remove это не get/set
разные структурки ж

Arky
12.12.2017
22:39:38

Google

Vladislav
12.12.2017
22:39:57
хэштаблица?

Вадим
12.12.2017
22:40:32

Vladislav
12.12.2017
22:40:45
если да, то rand(0,N) может выдать ключ, которого не существует. а тебе надо выдать 1/N (где N количество эл в структуре)

Sergey
12.12.2017
22:41:13
одна для ключей, другая для значений

Vladislav
12.12.2017
22:41:29
анука
покаж

Arky
12.12.2017
22:41:47

Вадим
12.12.2017
22:44:07
Думаю входа)
Ну вот зашел ты в 20-00, посидел час в чате, и вышел в 21-00. На след день зашел, с какого времени сообщения будут считаться новыми?

Sergey
12.12.2017
22:44:34

Sergey
12.12.2017
22:44:40
хотя быстрее так описать)

Vladislav
12.12.2017
22:45:04
ну напиши

Sergey
12.12.2017
22:45:12
первая хешмапа у тебя будет хранить значения из второй как ключи, а значения будут счетчиком

Vladislav
12.12.2017
22:45:16
просто не могу понять как ты хочешь делать ранд по хещтаблице

Sergey
12.12.2017
22:45:34
ну по факту вторая хешмапа это обычный массив

Vladislav
12.12.2017
22:45:41
ну так ок
обычный числовой массив

Arky
12.12.2017
22:46:09

Google

Вадим
12.12.2017
22:46:25
;)

Sergey
12.12.2017
22:47:20
с добавлением там все просто будет, добавили в первый хеш ключ + внутренний счетчик, во вторую ключ как внутренний счетчик + значение

Vladislav
12.12.2017
22:47:42
ща покажу свое решение. такое же кажись

Sergey
12.12.2017
22:47:59
а при удалении из середины сета мы удаляем значение и переставляем на его место то что было в конце
+ обновляем внутренний счетчик чтобы след значение шло в правильном порядке
кроме как rand(0,N-1) я хз даже че еще можно сделать) свои реализации рандома еще не делал...

Vladislav
12.12.2017
22:49:41
та не надо
я держу в хешмапе
val -> index in arr

Admin
ERROR: S client not available

Vladislav
12.12.2017
22:50:27
ключ и индекс в массиве, шде лежит элемент.

Sergey
12.12.2017
22:50:48
это оно и есть)
только хз зачем это на собесе давать

Vladislav
12.12.2017
22:51:14
рандом по обычному массиву rand(0, N).
при удалении я беру элемент с массива, свапаю с последним с обрезаю массив.
точнее давай ArrayList. не массив

Sergey
12.12.2017
22:51:40
человек который никогда подобным не занимался впадет в ступор

Vladislav
12.12.2017
22:51:50
не, 30 мин есть
никто ж не гонит
а то потом будешь видеть в коде
foreach(array as el)
{
lol = $em->getRepo()->findBy(el)
}
и думать чего это у тебя бд сдохла

Google

Sergey
12.12.2017
22:53:04
ну хз я на собесе больше архитектурные вопросы задаю, на логику

Vladislav
12.12.2017
22:53:26
ну а чего нет? изи. на тестовых данных с 100 ел работает нормально
а потом как покажет

Sergey
12.12.2017
22:54:27
ооп особо не спрашиваю, паттерны только в разрезе симфони
ну там как UoW работает или EventDispatcher реализован
если на EventDispatcher говорит "так это ж медиатор епта", то получает солнышко
обсервер - тучку

Vladislav
12.12.2017
22:55:34
ну в доке ж так
на первом собесе когда-то сказал что EventDisp это Observer, пацаны посмеялись ))

Sergey
12.12.2017
22:55:40
если городит хуйню то все плохо)

Vladislav
12.12.2017
22:55:49
а, солнышко в смысле ок
ну там в 3 абзаце написано шо это медиатор

Sergey
12.12.2017
22:56:03
обсервер и медиатор похожи, но они разные
да? раньше не было вроде

Vladislav
12.12.2017
22:56:14
ща покажу

Sergey
12.12.2017
22:56:18
та верю

Vladislav
12.12.2017
22:56:45
даж угадал абзац