• Как сравнить строки в c#, чтобы получить результат сравнения в процентах?

    @Mercury13
    Программист на «си с крестами» и не только
    Так данная строка будет описанием или нет? Считаем, что будет.

    1. Бьём строки на слова.
    2. Возможно, выкинуть незначащие слова и преобразовать все в базовую форму. Надо признаться, тяжёлое дело: если нет словаря, то «дочь генерала» — это сущ+глагол или сущ+сущ? А со словарём: «уж» — это частица или существительное? В общем, лучше выдавать все возможные основания, и у нас получается нетранзитивное «=» — OK, если совпадает хотя бы одна форма. Возможно, проводим ёфикацию или деёфикацию: первое сложнее, второе чревато ложными срабатываниями.
    3. Вычисляем расстояние Левенштейна между этими массивами, считая неделимыми сущностями не буквы, а слова.
    4. Преобразуем его в наш процент — например, % = d / max{|s1|, |s2|}.

    Можно продолжать: если совпадение не только по основанию, но и по форме — дополнительные очки. Работать с синонимами, как из словаря, так и ручными, например, небезызвестный Milfgard придумал игру «Шакал», и вручную, по результатам исследования логов, вписал синоним «Койот». А нужно ли работать с орфоошибками? В том числе с неправильным написанием слова наподобие «джин/джинн»? И тот, и другой встречается в бутылке, но первый пьют, второй исполняет желания. :)

    В общем, задача исследовательская, и важная её часть — понять, где остановиться и чего хватит, чтобы решить задачу более высокого уровня.
    Ответ написан
    2 комментария
  • Возможен ли успешный запуск проекта на kickstarter из РФ?

    anathem
    @anathem
    1. Зарегистрировать компанию в указанных странах (и там, и там, кстати, оффшорные территории есть).
    2. Найти там компаньона и через него делать (естественно, подстраховавшись).
    3. Участвовать в отечественных аналогах кикстартера.
    Ответ написан
    2 комментария