Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2013.03.22;
Скачать: CL | DM;

Вниз

Ищу, от 60к, Москва, ведущий программист / Team Lead, нач. отдела   Найти похожие ветки 

 
Kerk ©   (2012-04-20 18:34) [200]


> Думкин_   (20.04.12 18:24) [199]

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

> Дело не в крайности. Я математик. Мне достаточно того, что
> одно число должно быть четным. Остальное скука уже.

Ну программист должен в том числе уметь отвечать на вопрос "а как?" :)


 
Думкин_   (2012-04-20 18:40) [201]


> Если 2000, то это уже другая задача.

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

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

Ну, каждому свое. Только я изменю константу на входе (или сам массив своей длинной принесет ее), а ты будешь решать "другую задачу". Что будет важнее в реализации - вопрос. Даст ли твое решение существенную разницу по скорости в реальных задачах или мое в том, что код не изменится ни на йоту и не потребует привлечения программиста.
Главным останется одна тривиальная вещь - одно число четное. Ничего более сложного в этой задаче - просто нет.


 
Inovet ©   (2012-04-20 18:48) [202]

> [196] Kerk ©   (20.04.12 18:10)
> А судя по тому, что респондент про AND не вспомнил, то реализовать
> нормально он не сумеет :)

А fnd к арифметическим не относится?


 
Inovet ©   (2012-04-20 18:55) [203]

> [202] Inovet ©   (20.04.12 18:48)
> fnd

and


 
Kerk ©   (2012-04-20 18:56) [204]


> Думкин_   (20.04.12 18:40) [201]

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

> Главным останется одна тривиальная вещь - одно число четное.
>  Ничего более сложного в этой задаче - просто нет.

Это если говорить о книжке "занимательная математика" для 8 класса, а не о собеседовании программистов :)


 
Kerk ©   (2012-04-20 18:57) [205]


> Inovet ©   (20.04.12 18:48) [202]

http://ru.wikipedia.org/wiki/%D0%90%D1%80%D0%B8%D1%84%D0%BC%D0%B5%D1%82%D0%B8%D0%BA%D0%B0#.D0.9E.D0.BF.D0.B5.D1.80.D0.B0.D1.86.D0.B8.D0.B8

Вот видишь, Думкин, а ты говоришь ничего сложного :)


 
Думкин_   (2012-04-20 19:01) [206]


> Kerk ©   (20.04.12 18:56) [204]

Я спорить не буду. Я лишь заметил, что есть языки, которые не интересует машинное представление чисел (его для них нет) и там такое обобщение будет автоматом. Для меня это вот с and с точки зрения текущей практики - как для тебя [114]. Хотя и про него я тоже знаю - но в другой практике.


> Это если говорить о книжке "занимательная математика" для
> 8 класса, а не о собеседовании программистов :)

Не 8-го, а третьего. Зато у нас sql  в язык встроен и вкусностей разных - два вагона. :)


 
Думкин_   (2012-04-20 19:01) [207]


> Kerk ©   (20.04.12 18:57) [205]

Не, я про другое же. :)


 
Inovet ©   (2012-04-20 19:03) [208]

> [205] Kerk ©   (20.04.12 18:57)
> Вот видишь, Думкин, а ты говоришь ничего сложного :)

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


 
Inovet ©   (2012-04-20 19:05) [209]

> [207] Думкин_   (20.04.12 19:01)
> Не, я про другое же. :)

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


 
Kerk ©   (2012-04-20 19:10) [210]


> Думкин_   (20.04.12 19:01) [206]

Ну со [114] я бы не сравнивал, все-таки в моей задаче достаточно общих знаний информатики, там нет специфических извращений.

И вообще предлагаю рассмотреть задачу именно с том контексте, в котором она ставилась. На собеседовании тебе говорят: напиши код определяющий четность произведения трех чисел без арифметических операций. Если им выдать в ответ такое, выглядеть это будет странно:

function isProductOdd(Ops: array of Integer): Boolean;
var
 I: Integer;
begin
 Result := True
 for I := 0 to High(Ops) do
   if (Ops[I] and 1) = 0 then
   begin
      Result := False;
      Break;
   end;
end;

var
 isOdd: Boolean;
begin
...
 isOdd := isProductOdd([1,2,3]);
...
end;


 
boriskb ©   (2012-04-20 19:11) [211]

Думкин_
Kerk ©

Ставлю на Думкина :)
Шайбу!!

Если бы передо мной встала подобная задача, я рассуждал как Думкин.
Вполне допускаю, что можно так сформулировать условия задачи, что предподчтительный будет подход Ромы.
Но начинал бы я как Думкин.

Жалко что вы практически договорились  Я бы еще поболел :)))


 
Kerk ©   (2012-04-20 20:56) [212]

Ну вообще тот факт, что у задачи есть более одного корректного решения, это хороший знак. Есть о чем поговорить :)


 
tesseract ©   (2012-04-20 22:20) [213]


> Нужно с RSDN народ позвать. Там опытные зубры, закаленные
> в срачах о правильных собеседованиях :)


Еще с sql.ru позови. Я возможно уже больше интегратор, чем программист - но давно четко научился различать собеседователей. Особо радуют сбивающие цену. Видят что человек подходит по области работы и сразу начинают сбивать ЗП. Доходило что по на собеседовании по интеграции данных мне предлагали стандартные задачи по графам и указателям ( в 1с да это офигенно важно). Причем ПМ активно уклонялся от основной темы - обеспечения инфообмена в гетерогенной среде. Каждой бочке нужна своя затычка :-)


 
Kerk ©   (2012-04-20 22:42) [214]


> tesseract ©   (20.04.12 22:20) [213

На прошлой своей работе я задал начальнику отдела вопрос: "А почему в вакансии на схожую со мной позицию зарплата указана раза в полтора выше моей"? Он ответил, что это для привлечения внимания, а на собеседовании будут пытаться убедить человека, что он маловато знает и поэтому ему можно предложить зарплату ниже обещанного.

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


 
Inovet ©   (2012-04-21 22:39) [215]

> [211] boriskb ©   (20.04.12 19:11)
> Ставлю на Думкина :)

"А самые умные идут грузить чугуний." (с) анекдот.


 
Ega23 ©   (2012-04-22 23:57) [216]


> напиши код определяющий четность произведения трех чисел


Пропущено ключевое слово "целых" :)

З.Ы. А мне вот кто-то как-то раз говорил, что соискателей (очень многих) вопрос: "Напиши функцию умножения двух чисел" ставил в тупик.


 
antonn ©   (2012-04-22 23:59) [217]


> З.Ы. А мне вот кто-то как-то раз говорил, что соискателей
> (очень многих) вопрос: "Напиши функцию умножения двух чисел"
> ставил в тупик.

определенно, где-то подвох... :)


 
Ega23 ©   (2012-04-23 00:05) [218]


> определенно, где-то подвох... :)


Ну если такой вопрос задаётся, то точно подвох. Какие числа, какой тип результата надо получить, проверка результата за выход области значений.
Это ИМХО, я бы такие встречные вопросы задал, если бы меня попросили.

А с чётностью чисел - это да, нужно чтобы хотя бы одно было чётным. Все по and-у сложить
(x and y and z and 1) = 1


 
Германн ©   (2012-04-23 00:57) [219]


> Ega23 ©   (22.04.12 23:57) [216]
>
>
> > напиши код определяющий четность произведения трех чисел
>
>
> Пропущено ключевое слово "целых" :)
>

Любишь "масло масляное"? :)


 
Ega23 ©   (2012-04-23 01:23) [220]


> Любишь "масло масляное"? :)


Отнюдь, люблю точные формулировки.


 
Германн ©   (2012-04-23 01:49) [221]


> Отнюдь, люблю точные формулировки.

"Чётность в теории чисел — характеристика целого числа, определяющая его способность делиться нацело на два."
http://ru.wikipedia.org/wiki/%D0%A7%D1%91%D1%82%D0%BD%D1%8B%D0%B5_%D0%B8_%D0%BD%D0%B5%D1%87%D1%91%D1%82%D0%BD%D1%8B%D0%B5_%D1%87%D0%B8%D1%81%D0%BB%D0%B0


 
Германн ©   (2012-04-23 03:10) [222]


>
> З.Ы. А мне вот кто-то как-то раз говорил, что соискателей
> (очень многих) вопрос: "Напиши функцию умножения двух чисел"
> ставил в тупик.
>

Меня тоже этот вопрос "ставит в тупик".


 
Anatoly Podgoretsky ©   (2012-04-23 06:45) [223]

> Ega23  (23.04.2012 00:05:38)  [218]

Ecли хотя бы одно было чётным, то по and-у складывать нельзя


 
CRLF   (2012-04-23 07:41) [224]


> Отнюдь, люблю точные формулировки.
Тогда научись писать "отнюдь нет", потому что само по себе "отнюдь" = "вовсе".


 
Sha ©   (2012-04-23 08:12) [225]

> Ega23 ©   (23.04.12 00:05) [218]
> Все по and-у сложить (x and y and z and 1) = 1

1. тогда уж не сложить, а умножить )
2. в данном случае чуть быстрее сравнивать с нулем


 
Ega23 ©   (2012-04-23 08:32) [226]


> "Чётность в теории чисел — характеристика целого числа,
> определяющая его способность делиться нацело на два."


Ну лоханулся, чё сразу орать-то  :)


 
han_malign   (2012-04-23 12:22) [227]


> > "Чётность в теории чисел — характеристика целого числа,
>
> > определяющая его способность делиться нацело на два."
>
>
> Ну лоханулся, чё сразу орать-то  :)

- произведение трех рациональных чисел вполне может быть целым, и даже четным...


 
AV ©   (2012-04-23 17:19) [228]

и даже иррациональных


 
Kerk ©   (2012-04-24 13:20) [229]

Вот, кстати, о чём пишет классик:

На формальную квалификацию следует обращать минимум внимания, поскольку при её отсутствии кандидаты дисквалифицируются автоматически.


 
Sha ©   (2012-04-24 13:31) [230]

Классик подлежит дисквалификации из-за неспособности делать логические выводы:
как можно лишить человека того, чего у него не было?


 
Очень Злой   (2012-04-24 14:05) [231]


> А мне вот кто-то как-то раз говорил, что соискателей (очень
> многих) вопрос: "Напиши функцию умножения двух чисел" ставил
> в тупик.


Функцию умножения каких чисел? Что можно использовать, а что нет?

Вобщем ИМХО если нет никаких дополнительных условий то для начала пишем:
function (a,b ...
begin
 Result:=a*b;
end;


А потом выслушиваем эти дополнительные условия и пишем так как требуется.


 
Думкин ©   (2012-04-24 14:14) [232]


> А потом выслушиваем эти дополнительные условия и пишем так
> как требуется.

1. Гиперкомплексные
2. Произвольная точность.


 
Kerk ©   (2012-04-24 14:20) [233]


> вопрос: "Напиши функцию умножения двух чисел"

Это вопрос в стиле "нарисуй домик" Джоэля Спольски. Он утверждает, что 146% респондентов тупо рисуют одно и то же и только оставшиеся 17% интересуются, а какой собственно дом нужно рисовать.


 
Думкин ©   (2012-04-24 14:31) [234]


> Kerk ©   (24.04.12 14:20) [233]

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


 
Kerk ©   (2012-04-24 14:33) [235]


> Думкин ©   (24.04.12 14:31) [234]

Подход на самом деле спорный. Очень напоминает "а угадай, что я имел ввиду".

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


 
Sha ©   (2012-04-24 14:40) [236]

Это Джоэль не тех собеседовал.
Наши могут задавать ему доп. вопросы, пока он сам не нарисует домик.


 
AV ©   (2012-04-24 15:51) [237]


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

+ 100500 :))
и сознается еще что Кеннеди застрелил


 
Игорь Шевченко ©   (2012-04-24 16:18) [238]

AV ©   (24.04.12 15:51) [237]

Тебе курс нефлудина не пора пройти ?


 
Юрий Зотов ©   (2012-04-24 16:41) [239]

> 146% респондентов тупо рисуют одно и то же и только оставшиеся 17%

Джоэль изобрел новые проценты?


 
CRLF   (2012-04-24 17:09) [240]


> Джоэль изобрел новые проценты?
Это кто-то ещё от выборов не очухался.



Страницы: 1 2 3 4 5 6 7 вся ветка

Текущий архив: 2013.03.22;
Скачать: CL | DM;

Наверх




Память: 1.08 MB
Время: 0.108 c
3-1276674643
Hadroran
2010-06-16 11:50
2013.03.22
Построение представления


2-1339576883
Seally
2012-06-13 12:41
2013.03.22
Делфи не признает AdvStringGrid


15-1330507432
ПЛОВ2
2012-02-29 13:23
2013.03.22
CompareText и кирилица


15-1345368609
Дмитрий С
2012-08-19 13:30
2013.03.22
Pci-e SSD


2-1328186097
Ega23
2012-02-02 16:34
2013.03.22
Добавить в DBGrid колонки