точно подметили, но после 4х курсов я что-то слабо вспоминаю что-то,
что мне поможет) Хм, значит я был прав когда подумал, что для
тестового задания это круто. Напишу все-таки парсер, который будет
обрабатывать большинство случаев... На хабре было несколько статей про
вред излишнего перфекционизма, я с ними согласен в принципе.
5 июля 2011 г. 0:23 пользователь a.ognevsky <a.ognevsky@gmail.com> написал:
> Ну я потому и написал про именно этот случай, хотя да, если это просто
> тестовое задание — крутое, спору нет. Если попытка решить боевую задачу —
> да, формочки это нудно и неудобно, иногда таки приходится писать парсеры,
> предусматривать тысячи разных вариантов, но именно тут я таки влепил бы
> формочку.
> Опять-таки, зависит от того, боевая ли это задача или просто надуманная «а
> ну-ка, сделай-ка вот так».
> Ну и чтобы предложить хоть какой-то вариант. Тут много было разговоров о
> высших образованиях, люди с образованием знают кучу умных слов с лекций, но
> я их (увы) не помню, поэтому просто предложу первое, что пришло в голову:
> сделать что-то вроде шаблонов. У вас ведь есть строка, она разбита
> пробелами. Порядок нам, в принципе, известен.
> А дальше вы разбиваете строку на 5 частей, каждый кусок анализируете своим
> анализатором. В анализаторе с 6*40 у вас есть несколько шаблонов:
> числоХРЕНЬчисло, как минимум.
> Ну и таким образом вы таки по частям анализируете каждую часть, а потом
> пишите в базу (или что там нужно делать).
> Но опять-таки, если это задача ради задачи — здесь и проверяется знание
> крутых умных вещей, которых я не знаю, допустим.
> --
> Andrey Ognevsky
>
> On Tuesday, July 5, 2011 at 12:10 AM, Timothy N. Tsvetkov wrote:
>
> Я с тобой не согласен в данном случае. Есть ряд случаев, когда это
> необходимо и нельзя обойтись введением жесткого полиси. Плюс такое
> тестовое задание проверяет некоторые интересные навыки.
>
> 2011/7/5 a.ognevsky <a.ognevsky@gmail.com>:
>
> Я, конечно, не образцовый сотрудник, но таки так и решил бы тестовое
> задание: сделать форму, чтобы пользователь не вводил всякую фигню. Ну а если
> бы это не подошло -- вежливо попрощался бы, ибо писать килотонные (и
> бесполезные) парсеры -- это как-то глупо в данной ситуации (имхо).
> (но я не горжусь этим своим качеством)
> --
> Andrey Ognevsky
>
> On Monday, July 4, 2011 at 8:51 PM, weiss --- wrote:
>
> За ссылку спасибо, гем к сожалению бесполезен - нужно сделать на
> отвратительном 1С...
>
> 4 июля 2011 г. 20:47 пользователь Саша А <elequtree@gmail.com> написал:
>
> Вот гем: https://github.com/flori/amatch/tree/master
>
> 5 июля 2011 г. 0:45 пользователь Саша А <elequtree@gmail.com> написал:
>
> Попробуйте посмотреть в сторону
> http://en.wikipedia.org/wiki/Jaro%E2%80%93Winkler_distance
> Может мысли какие-нибудь появятся по смежным ссылкам.
>
> 4 июля 2011 г. 22:49 пользователь weiss --- <ecuezzo@gmail.com> написал:
>
> Всем доброго времени суток! Всплыла задачка которую срочно надо решить
> (не на ruby, но дело в принципе). Натолкните пожалуйста на
> удовлетворительный алгоритм :-)
> В одном филиале люди заносят название товара и его количество, к
> примеру
>
> No. Наименование �Количество
> 1 ДБМ "грибок" 6х40 ЦИЛИНДР 100 7
>
> Похожая ситуация в другом отделении, но так как человеку свойственно
> ошибаться, наименование может быть записано немного по другому,
> например вот так:
>
> No. Наименование Количество
> 3 ДБМ "грибок" 6*40 ЦИЛИНДР 100 2
>
> БД не одна и та же, поэтому нужно все это дело сравнить и посчитать
> общую сумму товара.
> Какой может быть алгоритм, который даст минимум фейлов? Вырезать из
> строчки все пробелы, знаки препинания, оставлять только буквы и цифры,
> и потом сравнивать? Но если кто-то пишет 6х40 а кто-то 6*40, то это
> не сработает. И ИИ еще не изобрели. Или я не туда смотрю, и все-таки
> можно сделать так, чтобы конечный результат был на 100% валидным?
>
> --
> --
> Данное сообщение отправлено Вам, так как Вы являетесь подписчиком группы
> "RubyOnRails to russian" на группах Google.
> FAQ группы находится по адресу: http://ru.wikibooks.org/wiki/RubyFAQ
>
> Для того, чтобы отправить сообщение в эту группу, пошлите его по адресу
> ror2ru@googlegroups.com
> Чтобы отменить подписку на эту группу, отправьте сообщение по адресу:
> ror2ru-unsubscribe@googlegroups.com
> Дополнительные варианты находятся на странице группы
> http://groups.google.com/group/ror2ru?hl=ru
>
> --
> --
> Данное сообщение отправлено Вам, так как Вы являетесь подписчиком группы
> "RubyOnRails to russian" на группах Google.
> FAQ группы находится по адресу: http://ru.wikibooks.org/wiki/RubyFAQ
>
> Для того, чтобы отправить сообщение в эту группу, пошлите его по адресу
> ror2ru@googlegroups.com
> Чтобы отменить подписку на эту группу, отправьте сообщение по адресу:
> ror2ru-unsubscribe@googlegroups.com
> Дополнительные варианты находятся на странице группы
> http://groups.google.com/group/ror2ru?hl=ru
>
> --
> --
> Данное сообщение отправлено Вам, так как Вы являетесь подписчиком группы
> "RubyOnRails to russian" на группах Google.
> FAQ группы находится по адресу: http://ru.wikibooks.org/wiki/RubyFAQ
>
> Для того, чтобы отправить сообщение в эту группу, пошлите его по адресу
> ror2ru@googlegroups.com
> Чтобы отменить подписку на эту группу, отправьте сообщение по адресу:
> ror2ru-unsubscribe@googlegroups.com
> Дополнительные варианты находятся на странице группы
> http://groups.google.com/group/ror2ru?hl=ru
>
> --
> --
> Данное сообщение отправлено Вам, так как Вы являетесь подписчиком группы
> "RubyOnRails to russian" на группах Google.
> FAQ группы находится по адресу: http://ru.wikibooks.org/wiki/RubyFAQ
>
> Для того, чтобы отправить сообщение в эту группу, пошлите его по адресу
> ror2ru@googlegroups.com
> Чтобы отменить подписку на эту группу, отправьте сообщение по адресу:
> ror2ru-unsubscribe@googlegroups.com
> Дополнительные варианты находятся на странице группы
> http://groups.google.com/group/ror2ru?hl=ru
>
> --
> --
> Данное сообщение отправлено Вам, так как Вы являетесь подписчиком группы
> "RubyOnRails to russian" на группах Google.
> FAQ группы находится по адресу: http://ru.wikibooks.org/wiki/RubyFAQ
>
> Для того, чтобы отправить сообщение в эту группу, пошлите его по адресу
> ror2ru@googlegroups.com
> Чтобы отменить подписку на эту группу, отправьте сообщение по адресу:
> ror2ru-unsubscribe@googlegroups.com
> Дополнительные варианты находятся на странице группы
> http://groups.google.com/group/ror2ru?hl=ru
>
> --
> --
> Данное сообщение отправлено Вам, так как Вы являетесь подписчиком группы
> "RubyOnRails to russian" на группах Google.
> FAQ группы находится по адресу: http://ru.wikibooks.org/wiki/RubyFAQ
>
> Для того, чтобы отправить сообщение в эту группу, пошлите его по адресу
> ror2ru@googlegroups.com
> Чтобы отменить подписку на эту группу, отправьте сообщение по адресу:
> ror2ru-unsubscribe@googlegroups.com
> Дополнительные варианты находятся на странице группы
> http://groups.google.com/group/ror2ru?hl=ru
--
--
Данное сообщение отправлено Вам, так как Вы являетесь подписчиком группы "RubyOnRails to russian" на группах Google.
FAQ группы находится по адресу: http://ru.wikibooks.org/wiki/RubyFAQ
Для того, чтобы отправить сообщение в эту группу, пошлите его по адресу
ror2ru@googlegroups.com
Чтобы отменить подписку на эту группу, отправьте сообщение по адресу: ror2ru-unsubscribe@googlegroups.com
Дополнительные варианты находятся на странице группы http://groups.google.com/group/ror2ru?hl=ru
Комментариев нет:
Отправить комментарий