1. Perl / Говнокод #6155

    −120

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    31. 31
    32. 32
    33. 33
    34. 34
    use strict;
    use warnings;
    
    my $expr = $ARGV[0] || die();
    my $n = $ARGV[1] || die();
    die if ($n < 1) || ($n > length($expr));
    
    $expr =~ tr/[\xc0-\xdf]\xa8/[\xe0-\xff]\xb8/;   # lc
    ($expr =~ m/^[\xe0-\xff\xb8\-]+$/s) || die();
    
    
    open(F, 'index') || die("failed to open 'index': $!");
    while (<F>)
    {
        chomp();
        print "$_\n" if (match($_, $expr, $n));
    }
    close(F);
    
    
    sub match
    {
        my ($str, $expr, $n) = @_;
    
        return if length($str) != $n;
        foreach my $letter (split(//, $str))
        {
            my $pos = index($expr, $letter);
            return if ($pos < 0);
            substr($expr, $pos, 1, '');
        }
    
        return 1;
    }

    собирает из букв слова
    использовать совместно со словарем
    вот мой это индекс русского вики
    http://files.mail.ru/CNVUDS

    Запостил: iliym, 31 Марта 2011

    Комментарии (0) RSS

    Добавить комментарий

    Ошибка компиляции комментария:
    1. Гости могут высказаться только во вторник, пятницу или субботу
    ava Я, guest, находясь в здравом уме и твердой памяти, торжественно заявляю:
    А не использовать ли нам bbcode?
    • [b]жирный[/b] — жирный
    • [i]курсив[/i] — курсив
    • [u]подчеркнутый[/u] — подчеркнутый
    • [s]перечеркнутый[/s] — перечеркнутый
    • [blink]мигающий[/blink] — мигающий
    • [color=red]цвет[/color] — цвет (подробнее)
    • [size=20]размер[/size] — размер (подробнее)
    • [code=<language>]some code[/code] (подробнее)
    Проверочный код