Главная страница


ru.perl

 
 - RU.PERL ----------------------------------------------------------------------
 From : Serge Chervjakov                     2:5020/400     16 Sep 2004  18:20:38
 To : All
 Subject : OCR
 -------------------------------------------------------------------------------- 
 
 Hi All,
 
 Hаткнулся на прикольную прикольную вещь в нете:
 First place: Keith Winstein's optical character recognition engine. both
 judges almost figured this one out after Keith blew his cover by naming a
 subroutine ocr. Clever code, however! 
 
 #!/usr/bin/perl -l
 
 print ocr(<<TPJ);
  #  # # ## ##  ## ##  #    #  #  # # ##  #  #  #  #
 ### # # #  # # #  # # #    # # # # # # # ## # # # #
  #  ### ## ##  ## ##  #    # # # # # ##  # ## ### #
  #  # # #  #   #  # # #  # # # # # # # # #  # # # #
  #  # # ## #   ## # # ## ###  #  ### # # #  # # # ##
 TPJ
 
 sub ocr{@{$-[$@++]}=split$,for(split'\n',shift);for$@(0..4){for(0..51){++$_{$_
  }if($-[$@][$_]=~$")}}@&=(-1);for(sort{$a<=>$b}keys%_){push@&,$_ if($_{$_}>4)
   }push@&,52;for$@(0..13){@{$|[$@][$_]}=@{$-[$_]}[$&[$@]+1..$&[$@+1]-1]for(0..
    4)}for(@|){**=$_;$w=@{$*[$^=$$=0]}-1;for$@(0..4){for(1..$w){$^++if$*[$@][$_
     ]ne$*[$@][$_-1]}}for(0..$w){for$@(1..4){$$++ if$*[$@][$_]ne$*[$@-1][$_]}}
      for(0..20){push@},chr$_+65if(7*(8,4,2,9,2,3,7,8,1,$@,5,4,9,10,10,6,3,8,4,
       8,8)[$_]+(5,8,3,3,4,2,1,2,8,2,7,1,5,4,6,$@,3,6,8,4,1)[$_]==7*$^+$$)}}@}}
 
 По идее должно вывестись ThePerlJournal ну может в другом регистре.. но у меня
 не прет - под виндой вообще пустой результат, под линуксом ругается что
 Modification of a read-only value attempted at ./cool.pl line 11.
 Разобраться в коде возможным мне не представляется - не видывал столь
 запутанного кода:).
 У кого-нить есть рабочая версия?:)
 
 ЗЫ: оригинал на http://www.foo.be/docs/tpj/issues/vol4_3/tpj0403-0017.html
 если плохо скопировалось сюды..
 
 --- ifmail v.2.15dev5.3
  * Origin: FidoNet Online - http://www.fido-online.com (2:5020/400)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 OCR   Serge Chervjakov   16 Sep 2004 18:20:38 
 Re: OCR   Artur Penttinen   16 Sep 2004 18:35:44 
Архивное /ru.perl/166795de050bb.html, оценка 2 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional