Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Прочее";
Текущий архив: 2013.03.22;
Скачать: [xml.tar.bz2];

Вниз

Ищу, от 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;
Скачать: [xml.tar.bz2];

Наверх




Память: 1.06 MB
Время: 0.229 c
2-1337677823
leklerk
2012-05-22 13:10
2013.03.22
функция NetMessageBufferSend


2-1343380872
Люда
2012-07-27 13:21
2013.03.22
Вопрос по StringList


2-1334939002
leklerk
2012-04-20 20:23
2013.03.22
Как сделать, чтобы в dbgrid всегда была прокрутка?


15-1343236383
alexdn
2012-07-25 21:13
2013.03.22
Шрифт


2-1331014601
DevilDevil
2012-03-06 10:16
2013.03.22
Помогите то ли с куки, то ли с переадресацией





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский