ЖЖ Украина

Самый сок!

всё то интересное в сети, что попало в мои сети


Предыдущий пост поделиться Следующий пост
ЖЖ Украина

Айтишникам: разминка для мозгов

Помните я писал пост о необычных вопросах, которые задают в крупных компаниях во время приема на работу? Мне написал автор блога "Психология в ИТ", говорит, что на собеседованиях задавал вполне простую задачу соискателям, но правильное решение практически никто не нашёл.

Задача: Дан массив 100 на 100 of byte. Нужно предложить алгоритм определения, есть ли в этом массиве повторяющиеся элементы. Алгоритм должен работать правильно и максимально быстро. Язык реализации значения не имеет.

Ну что, сложно? :)

З.Ы. Блог рекомендую, у него там много ИТшных фишек.

промо ibigdan декабрь 3, 2007 00:08
Разместить за 1 500 жетонов
Если вы хотите сделать хорошую рекламу вашему продукту или услуге - вы зашли по адресу. Блог "Самый сок!" читают во всём мире. Среднее количество просмотров на каждый пост - 50 тысяч, среднее количество просмотров блога в месяц - 4-5 миллионов. Изучить аудиторию блога в разных разрезах можно в…

(Анонимно) 20 января, 2011
Ответ.

Console.WriteLine('Есть');

the_cher 20 января, 2011
100 на 100 это 1000 байт это от 0..255
далее копетан очевидность подсказывает нам что язык реализации значения действительно не имеет

gen_mas 20 января, 2011
Так же "копетан очевидность" подсказывает, что 100 на 100 - это всё-таки 10 000

andrvkn 20 января, 2011
Ага. Время реакции 2 мин/3литра пива.

vvzone 20 января, 2011
Нафиг компании в которых такие вопросы задают... Пусть Вассермана наймут

you_ra_13 20 января, 2011
только задачка программерская, а не ИТя. ИТ это все-таки немного другой уровень.

... (Анонимно) Развернуть
ridaytrader 20 января, 2011
не то что бы сложно .... не понятно совсем!

jne 20 января, 2011
Это не программерская задача. Это задача на прицип Дирихле для пятого класса.

dadgo 20 января, 2011
не знал, что у этого логического решения есть название.

radja_777 20 января, 2011
очень просто - в одном байте 256 значений, массив 100х100 = 10000 значений. Дальше продолжать?

prognadzvy4ajn 20 января, 2011
Старый прикол, теперь в 2D :-)

pifour 20 января, 2011
может надо узнать сколько повторяющихся элементов? а то слишком просто :)

exper 20 января, 2011
а по-моему, задача четко поставлена: предложить алгоритм! настоящий программист должен тут же предложить пару алгоритмов.

Да нет, не сложно

koulikoff 20 января, 2011
Создаём вспомогательный массив длиной 256 и за O(n) определяем

Re: Да нет, не сложно

koulikoff 20 января, 2011
n - количество элементов в матрице

nemetss 20 января, 2011
делим массив пополам и сравниваем половины. 2 строки кода на РНР)

sarin2_0 20 января, 2011
не может не быть ))

romblog 20 января, 2011
Забавно, что пару человек таки попались на эту удочку)

knutzen 20 января, 2011
Отсортировать массив и поочередно проверять текущее значение с предыдущим.

apashenko 20 января, 2011
Что тут сложного-то? Десять тысяч элементов, максимум двести пятьдесят шесть разных значений — конечно есть повторяющиеся.

afa_at_work 20 января, 2011
гг
не думая.
есть.

ghrar 20 января, 2011
не люблю когда программеров суют в общую it-кучу.

fedotovd 20 января, 2011
ИТ вообще очень широкое понятие.
Логистик например тоже оттуда

iamkuznetsov 20 января, 2011
Может, я чего-то не понял... Но при чем тут количество элементов массива если задача стоит в другом?

setska 20 января, 2011
ну а еслі там больше 9744 элементов которые null? тогда не всё так легко :0)

hgage2003 20 января, 2011
BYTE(null) == 0 => много повторяющихся элементов

huliganov 20 января, 2011
Это для программеров.
Обычные смертные IT-шники которых большинство понятия про массивы не имеют :)

margesapples 20 января, 2011
чего-то я не понимаю в этой жизни)))
каким образом IT-шнег может не иметь понятия о массиве?

adontz 20 января, 2011
// ебитесь суки
#define char int

?

Log in