Здравствуйте, aerobus, Вы писали:
BZ>>а логическими операторами почему не пользуешься?
A>Ну на мой взгляд так данный код немножко лучше читается и его легче развернуть в if-then-else и на бумаге и в голове.
я ваш код прочесть не смог. по моему мнению, людей с императивным мышлением ("ди эрсте колонне марширт...") брать как раз не надо. мыслить нужно логически — либо строка короткая, либо первый и последний символы одинаковы, а середина опять же симметрична
Здравствуйте, Dan Dare III, Вы писали:
DDI>Здравствуйте, Lao, Вы писали:
Lao>>В С# не получиться сделать параметры по-умолчанию.
DDI>почему же не получится можно сэмулировать
Хотя бы намекните, что вы имели ввиду под эмуляцией.
DDI>>почему же не получится можно сэмулировать
Lao>Расскажите, пожалуйста, как это "сэмулировать"?
сэмулировать через params но вобще это штука была я видел такой код в портированой проге с с++ там авторы злоупотребили перегрузкой и параметрами по умолчанию
BZ>>я тебе предлагаю более простой способ отбора — показываешь свои 13 строчек девелоперу и если его кондрашка не хватит, сразу прощаешься
DDI>решение дожно быть понятно всем если они не решили разумеется
Это, как раз, не обязательно. Тут, как раз, уже другая задача со стороны компании: не доказать что решение вообще существует, а показать кандидату, как именно задачу решили бы они и каких именно решений они ждут от работника.
Из здесь возникает вопрос: поскольку предложенная задача "на рекурсия" в реальной жизни нежизнеспособна — зачем ее вообще предлагать решать, кроме как из принципа "проверить знание рекурсии"? Если вы какие-то задачи решаете рекурсией — имхо, логично предложить подобную задачу и посмотреть, как ее решит кандидат — тогда мы получим практические цели процесса "собеседование". В чем суть ставить задачу собеседования "выяснить что _вообще_ знает и чего не знает кандидат" — этого я за свою скромную жизнь понять не смог.
DDI>кроме этого есть специалисты которые переходят на с# из других областей — им тяжеловато читать код
Ну ты даешь! А если у тебя весь код так написан? И ты возмешь себе "специалиста", которому "трудно будет читать" твой код? А смысл? Как с ним потом работать?
DDI>всем им я показываю решение что бы у кандидата не было сомнений что задача действительно разрешаема в 15 строчек
вот-вот... а зачем? какова цель инициированного тобой процесса "собеседование"?
DDI>потому решени должно читаться очень, очень легко
А зачем? Какова цель демонстрации такого решения?
DDI>если твой код кандидат не поймет — это исключительно твой прокол кандидата этого ты уже не увидишь
А нужно? См.выше: если он твой код не поймет уже на собеседовании — что с ним дальше делать, начни он работать?
DDI>ко мне приходят и по второму разу и были случаи что брали если замечали прогресс
Здравствуйте, Dan Dare III, Вы писали:
DDI>приведи задание что бы была рекурсия и при этом не было избитых примеров типа чисел фибоначчи которые студенты могут писать по памяти и условие было в две-три строки и само решение укладывалось в 15 строк вместе со скобками в виде один оператор на строку
сопоставление с образцом (?*):
match (c:cs) ('?':ps) = match cs ps
match cs ('*':ps) | match cs ps = True
match (c:cs) ('*':ps) = match cs ps
match (c:cs) (p:ps) = c==p && match cs ps
match _ _ = False
Здравствуйте, BulatZiganshin, Вы писали:
BZ>>>а логическими операторами почему не пользуешься?
A>>Ну на мой взгляд так данный код немножко лучше читается и его легче развернуть в if-then-else и на бумаге и в голове.
BZ>я ваш код прочесть не смог. по моему мнению, людей с императивным мышлением ("ди эрсте колонне марширт...") брать как раз не надо. мыслить нужно логически — либо строка короткая, либо первый и последний символы одинаковы, а середина опять же симметрична
я смог прочесть и твой код и его запросто, при чем в коде aerobus нашел к чему придраться
а вот код avk я не понял
Здравствуйте, Кэр, Вы писали:
Кэр>Грандиозно. И вы ищите людей, которые будут выдавать такой код в ответ на вашу задачу?.. Удачи вашей компании... Она ей пригодится.
Кэр>Начнем с того, что данный код не работает на следующей симметричной строке "a\u0304ba\u0304".
я нигде не говорил что надо проверять текстовые символы перечитай я это повторяю тебе второй раз
если ты напишешь код с текстовыми символами не волнуйся я пойму его и собеседование закончится скорее с положительным результатом в твою пользу при чем бонус будет очень серьезным
я говорю всерьез без подколок
Кэр>Зачем вам там рекурсия крайне непонятно.
в проекте такой код не должен быть это очевидно от сюда и пляши
Здравствуйте, The Lex, Вы писали:
DDI>>приведи задание что бы была рекурсия и при этом не было избитых примеров типа чисел фибоначчи которые студенты могут писать по памяти и условие было в две-три строки и само решение укладывалось в 15 строк вместе со скобками в виде один оператор на строку
TL>Давай пойдем от обратного: зачем тебе вообще "проверять кандидата на знание рекурсии"?
считаю хорошо проверяет умение строить алгоритмы
сложно загружать кандидата смысла нет
DDI>>внятно но ты ошибаешься, пиши какой угодно код главно что бы он работал и его понимали другие
TL> Если дополнить картину твоим этим постом, то картина рисуется четче, но от это еще пессимистичнее...
Здравствуйте, The Lex, Вы писали:
TL>>Я внятно выразился?
TL>Но если не суетиться и спокойно подумать — над тем, стоит ли использовать такие задачи на собеседовании — то... почему бы и нет? Но Баба Яга все равно против! (к)
кроме этой задачи есть и без рекурсий
примитивный конечный автомат — её даю совсем слабым студентам для того что бы через год можно было оценить прогресс
Здравствуйте, The Lex, Вы писали:
TL>Это, как раз, не обязательно. Тут, как раз, уже другая задача со стороны компании: не доказать что решение вообще существует, а показать кандидату, как именно задачу решили бы они и каких именно решений они ждут от работника.
код должен быть понят кандидатом
многие ихз нерешивших буквально не верят что решение существует
TL>Из здесь возникает вопрос: поскольку предложенная задача "на рекурсия" в реальной жизни нежизнеспособна
приведи задание что бы была рекурсия и при этом не было избитых примеров типа чисел фибоначчи которые студенты могут писать по памяти и условие было в две-три строки и само решение укладывалось в 15 строк вместе со скобками в виде один оператор на строку
DDI>>кроме этого есть специалисты которые переходят на с# из других областей — им тяжеловато читать код
TL>Ну ты даешь! А если у тебя весь код так написан? И ты возмешь себе "специалиста", которому "трудно будет читать" твой код? А смысл? Как с ним потом работать?
если специалист решил задачу то уровень у него выше чем у того кому я показываю решение при чем гарантия 100%
DDI>>всем им я показываю решение что бы у кандидата не было сомнений что задача действительно разрешаема в 15 строчек
TL> вот-вот... а зачем? какова цель инициированного тобой процесса "собеседование"?
процесс не я инициировал
задача — очень удобно рассматривать кандидата со всех сторон
DDI>>потому решени должно читаться очень, очень легко TL>А зачем? Какова цель демонстрации такого решения?
я уже объяснил — что бы у кандидата не было никаких сомнений что я спрашивал простой вопрос
это для того что бы он спокойно прислал резюме через год
DDI>>если твой код кандидат не поймет — это исключительно твой прокол кандидата этого ты уже не увидишь TL>А нужно? См.выше: если он твой код не поймет уже на собеседовании — что с ним дальше делать, начни он работать?
нужно через год если будет прогресс все отлично — его берут
Здравствуйте, Dan Dare III, Вы писали:
DDI>>>приведи задание что бы была рекурсия и при этом не было избитых примеров типа чисел фибоначчи которые студенты могут писать по памяти и условие было в две-три строки и само решение укладывалось в 15 строк вместе со скобками в виде один оператор на строку
TL>>Давай пойдем от обратного: зачем тебе вообще "проверять кандидата на знание рекурсии"?
DDI>считаю хорошо проверяет умение строить алгоритмы DDI>сложно загружать кандидата смысла нет
Тут скорее "задача-головоломка на непрактичное применение известных алгоритмов/механизмов". Ну пусть будет "нетрадиционное применение". В целом, может иметь смысл в качестве проверки "незашоренности" мышления. С таким применением я согласен, но с целью — нет: я сам "зашоренный" на практические задачи и я не знаю хорошо мне будет или плохо, если в моей команде попадется такой вот "незашоренный оригинал".
DDI>>>внятно но ты ошибаешься, пиши какой угодно код главно что бы он работал и его понимали другие
TL>> Если дополнить картину твоим этим постом, то картина рисуется четче, но от это еще пессимистичнее...
DDI>я не понял что ты хотел сказать
Я хотел сказать, что очевидно стало, что ты даешь задачи, которых в практической работе у тебя на самом деле нет. Хорошо это или плохо? Т.е. вот я — кандидат. Я пришел, увидел, и понял (ну или для себя решил): "он дает задачи не из тех которые предстоит решать в работе" — точнее "совсем не из тех". Как ты считаешь я, как кандидат, должен оценить для себя перспективу работы с таким работодателем?
Lao>>Расскажите, пожалуйста, как это "сэмулировать"?
DDI>сэмулировать через params но вобще это шУтка была я видел такой код в портированой проге с с++ там авторы злоупотребили перегрузкой и параметрами по умолчанию
Здравствуйте, Dan Dare III, Вы писали:
TL>>>Я внятно выразился?
TL>>Но если не суетиться и спокойно подумать — над тем, стоит ли использовать такие задачи на собеседовании — то... почему бы и нет? Но Баба Яга все равно против! (к)
DDI>кроме этой задачи есть и без рекурсий DDI>примитивный конечный автомат — её даю совсем слабым студентам для того что бы через год можно было оценить прогресс
Здравствуйте, The Lex, Вы писали:
TL>Тут скорее "задача-головоломка на непрактичное применение известных алгоритмов/механизмов". Ну пусть будет "нетрадиционное применение". В целом, может иметь смысл в качестве проверки "незашоренности" мышления. С таким применением я согласен, но с целью — нет: я сам "зашоренный" на практические задачи и я не знаю хорошо мне будет или плохо, если в моей команде попадется такой вот "незашоренный оригинал".
да, задача головоломка хотя и не головоломка на деле то
DDI>>я не понял что ты хотел сказать
TL>Я хотел сказать, что очевидно стало, что ты даешь задачи, которых в практической работе у тебя на самом деле нет. Хорошо это или плохо? Т.е. вот я — кандидат. Я пришел, увидел, и понял (ну или для себя решил): "он дает задачи не из тех которые предстоит решать в работе" — точнее "совсем не из тех".
твое право отказаться силой тебя никто не заставляет работать
Здравствуйте, The Lex, Вы писали:
DDI>>кроме этой задачи есть и без рекурсий DDI>>примитивный конечный автомат — её даю совсем слабым студентам для того что бы через год можно было оценить прогресс
TL>Каким таким "студентам"?
задачу я не сразу и на этот момент у меня есть определенное мнение или сам студент говорит что не может
я не настаиваю даю попроще
конечный автомат — это только название страшное а решения один цикл и один if внутри цикла
есть и еще задачи — там требование решить в один проход без выделения памяти там решение только рекурсивное
само решение простое вовсе 8-9 строчек а условие довольно сложное студенты вот его не понимают
Здравствуйте, Dan Dare III, Вы писали:
TL>>Это, как раз, не обязательно. Тут, как раз, уже другая задача со стороны компании: не доказать что решение вообще существует, а показать кандидату, как именно задачу решили бы они и каких именно решений они ждут от работника.
DDI>код должен быть понят кандидатом DDI>многие ихз нерешивших буквально не верят что решение существует
Вот я и говорю: у тебя нет задачи "научить кандидата" (или ты таки имеешь в виду студентов!?) — у тебя есть задача "заполнить вакансию" — задачу "посмотреть людей и поискать которые может пригодятся" я не рассматриваю в виду непрактичности конечной цели.
TL>>Из здесь возникает вопрос: поскольку предложенная задача "на рекурсия" в реальной жизни нежизнеспособна
DDI>приведи задание что бы была рекурсия и при этом не было избитых примеров типа чисел фибоначчи которые студенты могут писать по памяти и условие было в две-три строки и само решение укладывалось в 15 строк вместе со скобками в виде один оператор на строку
Слушай... так ты препод! Только без обид! Ну ты бы сразу так и сказал!
DDI>>>кроме этого есть специалисты которые переходят на с# из других областей — им тяжеловато читать код
TL>>Ну ты даешь! А если у тебя весь код так написан? И ты возмешь себе "специалиста", которому "трудно будет читать" твой код? А смысл? Как с ним потом работать?
DDI>если специалист решил задачу то уровень у него выше чем у того кому я показываю решение при чем гарантия 100%
DDI>>>всем им я показываю решение что бы у кандидата не было сомнений что задача действительно разрешаема в 15 строчек
TL>> вот-вот... а зачем? какова цель инициированного тобой процесса "собеседование"?
DDI>процесс не я инициировал DDI>задача — очень удобно рассматривать кандидата со всех сторон
Зачем!? Жил бы ты в Штатах — еще и получил бы "втык" за "херассмент" (или как там его?)
DDI>>>потому решени должно читаться очень, очень легко TL>>А зачем? Какова цель демонстрации такого решения?
DDI>я уже объяснил — что бы у кандидата не было никаких сомнений что я спрашивал простой вопрос DDI>это для того что бы он спокойно прислал резюме через год
Ты точно в Штатах живешь: ну кто станет каждый год резюме слать? Кроме студентов и студентов на пересдаче...
DDI>>>если твой код кандидат не поймет — это исключительно твой прокол кандидата этого ты уже не увидишь TL>>А нужно? См.выше: если он твой код не поймет уже на собеседовании — что с ним дальше делать, начни он работать?
DDI>нужно через год если будет прогресс все отлично — его берут
Здравствуйте, Dan Dare III, Вы писали:
TL>>Я хотел сказать, что очевидно стало, что ты даешь задачи, которых в практической работе у тебя на самом деле нет. Хорошо это или плохо? Т.е. вот я — кандидат. Я пришел, увидел, и понял (ну или для себя решил): "он дает задачи не из тех которые предстоит решать в работе" — точнее "совсем не из тех".
DDI>твое право отказаться силой тебя никто не заставляет работать
Ты на меня рельсы не переводи — ты лично мне (и другим читающим это кандидатам) что посоветуешь в такой ситуации?
Здравствуйте, Dan Dare III, Вы писали:
AVK>>Программа на языке C#, осуществляющая проверку строки на симметричность рекурсивным образом.
DDI>а какая версия C# ?
3.0. Но на 2.0 можно то же самое сделать, только писанины больше.
... << RSDN@Home 1.2.0 alpha rev. 725 on Windows Vista 6.0.6000.0>>