ããšãã象ãäœãããã«ãå€ãã®äººã
ã¯èšèã§ãã®ãããªå€ã芪åãªéã³ãç¥ã£ãŠããŸãã ãã®æ¬è³ªã¯ãåã¹ãããã§1æåã ãã倿Žããªãããåã¹ãããã§æå³ã®ããåè©ãåãåããšåæã«ãæåã®åèªããæçµèªãäœæããå¿
èŠãããããšã§ãã
E. YaãGeekã®èæžã
Entertaining Mathematical Games ãã®èæžã§æåãªèè
ã¯ããã®ãããª16éãã®ãœãªã¥ãŒã·ã§ã³ãããšãã象ãäœãæ¹æ³ãfly-mura-tour-tara-kara-kare-kare-kafr-kayur-ãåºçããŸããã kayuk-hook-apricot-lesson-term-stock-groan-elephantã

ããã§ãããæ¥ãç§ã¯ããã°ã©ã ã§ãã®ã¿ã¹ã¯ã«åãçµãæ©äŒããããŸããã
象ã®ããšãããæåã®ããŒãžã§ã³
æ£çŽãªãšãããããšã®ãŸãŠã¯éåžžã«è¿
éã«åŠçãããããšãããããŸããã
ãœãªã¥ãŒã·ã§ã³ã®äžè¬çãªèãæ¹ïŒ
-åè©ã®èŸæžãåã
-æåŸã®åèªãéæã§ããå Žåã¯ããœãŒã¹ã¯ãŒãããæåŸã®åèªãŸã§å埩ã¢ã«ãŽãªãºã ãå®è¡ããŸãã
-çµæã®ãã§ãŒã³ãçºè¡ããåœŒå¥³ã¯æå°ã®é·ãã®ããã«åªåããããšãæãŸãã
ã ãã...
1ïŒåè©ã®èŸæž
æåã®æ®µèœã§ãåé¡ãããããšãããããŸãã-åè©ã®äŸ¡å€ã®ããèŸæžãèŠã€ããããšã¯å¥ã®ãµãã¿ã¹ã¯ã§ããããšã倿ããŸããã ã©ããæ£ç¢ºã«ã¯èŠããŠããŸããããèããããæ¢è£œã®èŸæžãèŠã€ããŸããã 1è¡ã«1ã¯ãŒããutf8ãåºåãæå\ r \ nã®åœ¢åŒ-å°æ¥çã«æ®ãããŸãã
2ïŒã¢ã«ãŽãªãºã
åœç¶ã圌ã¯ããšãšãŸãŠããã®åé¡ã解決ãããã©ããããããŠã©ã®ããã«è§£æ±ºããããå°ããŸããã ããã§
planetcalc.ru/544ã«è¯ã解決çãèŠã€ãããŸããã javascriptã®äžã®4èªã®ã¿ã®åèªã®å ŽåïŒããã¯å®éã«ã¯ãã®ã¢ããªã±ãŒã·ã§ã³ã®æ£ããèãã§ãããã©ãŠã¶ã§ã¯ã©ã€ã¢ã³ãããŒããŠã§ã¢ãæ€çŽ¢ã§ããå ŽåããµãŒããŒã®å®¹éãå¢ããããšã¯æå³ããããŸããïŒã ãã ãããœãŒã¹ã³ãŒãã¯èª¿ã¹ãŸããã§ããããèšäºã®åŸåã§æ£ããæšè«ã調ã¹ãŸããã
å®éããã¹ãŠã®ãªãã·ã§ã³ã䜿çšããŠããªãŒæ§é ãã¢ã«ãŽãªãºã ãšããŠäœ¿çšããæ€çŽ¢èªãèŠã€ãããŸã§æ¬¡ã®ã¬ãã«ãèšå®ããå ŽåãååãªãªãœãŒã¹ã¯ãããŸããã
ããšãã°ãåèªCORAã«ã¯ããå±±ããããè£å€æããžãšæãæµ®ãã¶äžè¬çãªåèªãã19ã®é·ç§»ããããŸãã
5ïŒåèšïŒïŒã®å¹³åä¿®æ£æ°ã«ã€ããŠéåžžã«æ¥œèгçãªæšå®å€ãäžãããšããŠããããåèªã«ã€ããŠæå°ãã¹ã10ã¹ãããã§ããå Žåãã¡ã¢ãªããªãŒã¯5
10ã = 1000äžããŒãã«åãŸãã¯ãã§ãã ããªãŒã®æ§é ãç¶æãããªãŒããŒãããïŒç¥å
ããã®åå«ãžã®å°ãªããšã2ã€ã®ãã€ã³ã¿ãŒããããã4/8ãã€ãïŒãšããŒãããŒã¿ïŒå€æ°ã®èšèª/æ§é ã©ãããŒ+ããŒã¿èªäœïŒutf8ã®è¡æåã¯10ãã€ã以äžïŒãä¿åãããªãŒããŒããããèãããšãã®ãããªæ¡ä»¶ã®RAMèŠä»¶ã¯ãå°ãªããšãçŽ200ã300 MBã§ãã ãŸããç¶æ³ã¯ããã«æªåããå¯èœæ§ããããŸãã
éºäŒçã¢ã«ãŽãªãºã ãéžæãããŸããã
ããã«ã圌ã¯ããã§åã«é Œã¿ãŸã-åèªã®æåã®å€æŽã¯æ¬è³ªçã«çªç¶å€ç°ã§ãã ãåºç£ãäžã®åå«ã®çåã®æ¡ä»¶ã¯ãèŸæžã«ããããšã§ãã ç«¶äºã®æåã®æ¡ä»¶ã§ãããã£ãããã¹ã¯ãåžæããåèªãšã®é¡äŒŒåºŠã§ãã
åèªé·ç§»é£éã®éºäŒçæ€çŽ¢ã®æ©èœ public function FindMutationChain($wordFrom, $wordTo, $maxSteps = 1000, $maxPopulation = 100) { $resultKeysChain = []; $resultChain = [];
æ£çŽã«åã
planetcalc.ru/544ã®èª¬æãã
éã¿é¢æ°ãåããŸããã ç§ã¯ããããªãã§ãããèããŸãããç§èªèº«ã¯ãããçè§£ããŸãã
-æ£ããäœçœ®ã«ããæåã®æ£äœ3ãã€ã³ãïŒã³ã¡ã³ããªããããã§ã®æå€§ã¹ã³ã¢ã¯è«ççã§ã
-å¥ã®äœçœ®ã§ã¯ããããæ¯é³ã¯2ãã€ã³ãïŒæ¯é³ãæ£ããå Žæã«ãã©ãã°ããããšã¯ã¯ããã«å°é£ã§ãããåé³ã®å€ç°ãšæ··åãããããªãããã®ãããªãªãã·ã§ã³ãå³ã®æ¯é³ã«è¿œå ãããŸãã ããã«ãæ¯é³ã¯ã調åãæŽããŸãã-æ€çŽ¢ãããåèªã«å¿
èŠãªåé³ãå«ãåé³ã¯ãåãããããªããŸãã
-äžè¬çãª1ç¹ã®æ¯é³ã®ååšïŒäžèšãšåæ§ã®çç±ã§ãæ¯é³ãå€åãããããšã¯åé³ãããã¯ããã«å°é£ã§ãã
ãããšã¯å¥ã«ãæ€çŽ¢ã®å
šäœã®æ®µéã§ãæçµçã«ã¯äžå®ã®æ¯èŒãè¡ãããã¯ãã®åç
§èªãåäžã§ããããšã«æ³šæããŠãã ããã ããšãã°ãåã
象 ã ãããã£ãŠããè±¡ãæ¯èŒããããã«æçã«åè§£ãããïŒè²§åŒ±ãªåç©ïŒã¯ããã®è§£ååŠç圢æ
ãšãã£ãã·ã¥ã§ã¯è«ççã§ãã
ç°¡åã«ããããã«ããŸãèãçŽããã«ãè©äŸ¡é¢æ°ã«æãåçŽãªãã£ãã·ã¥ãçŽæ¥æ§ç¯ããŸããã
åèªã®ãã¢ã®ãããã³ã°é¢æ° public function GetWordScore($word, $comparationWord) {
çªç¶å€ç°ã®æ°ããããªã¢ã³ãã®æ€çŽ¢ã¯ãæå®ãããåèªããå§ãŸãèŸæžãšèŸæžãééããŸãã ããã€ãã®è¿œå ã®è«ççãªå¶éããããŸãã
æåã®å¶éã¯ãå€ç°ã®æåã®èš±å®¹äœçœ®ã§ãã å®éãããšãã°ãæåŸã®ã¹ãããã§3æåç®ã倿ŽããŠãmuKhaã-ãmuZaããç§»åããå Žåãæ¬¡ã®ã¹ãããã§ãmuZaã-ãmuRaããšããçªç¶å€ç°ã¯æå³ããããŸããã çµå±ã®ãšãããå¯èœãªéãçããã§ãŒã³ã«èå³ããããŸãã ãããŠãããªãã¯ããã«ãmuHaã-ãmuRaãã«ç§»åã§ããã®ã§ãæå³çã«äžå¿
èŠãªã¹ããããèžãã§ããããšãããããŸãã ãããã£ãŠã颿°ã®ãã©ã¡ãŒã¿ãŒã®1ã€ã¯ãæåŸã®çªç¶å€ç°ã®äœçœ®ã§ãã
2çªç®ã®å¶éã¯ããã§ãŒã³å
ã®åèªã®äžææ§ã§ãã 説æãç°¡åã§ãã ãããšã-ã
å°éºŠç² ã-ãããã-ããã©ãã¯ã¹ã-ãã ã©ã-ã
å°éºŠç² ã-ãæããšãããã§ãŒã³ããããšããŸãã æããã«ãã
å°éºŠç² ã-ãããã-ãããŠç ã-ãã ãŒã¢ãã®éšåã¯ããã§ãŒã³å
ã§ã¯äžèŠã§ããã ãããŠãããšãæçµçãªã象ãã«å°éãããšããŠãããŸã£ããåãã§ãããç¹°ãè¿ãããäžæã®åèªã®ãã§ãŒã³ã¯çããªããŸãã ãããŠããã¯è¯ãã§ãã ãããã£ãŠãç¹°ãè¿ãã®ããã«ãã®ãããªãµã€ã¯ã«ã¯å¿
èŠãããŸããã ãããã£ãŠããã§ãŒã³ã§ãã§ã«äœ¿çšãããŠããåèªã®é
åïŒãã®å Žåã¯åèªã®IDïŒããå€ç°ããªã¢ã³ããæ€çŽ¢ããããã®é¢æ°ã®ãã1ã€ã®ãã©ã¡ãŒã¿ãŒã«ããŸãã
èªé·ãã©ã¡ãŒã¿ãŒã¯ãmb_strlenã®äžèŽã§ä¿åãããã®ã§ãã ãã®ããããã®æ¹æ³ã¯å人çã«èæ¡ãããŸãããã詊éšããã¹ãã§ã¯å
¬éãããŠããŸããã ãã®ãããªãã®ãæ¬çªç°å¢ã«å
¥ããªãã§ãã ãã:)ãããã«ããŠãããã§ãã¯ãã«ããŒããã«ã
ãããŠæåŸã®èšèã¯...å€åããçš®ã®äººéã®åçããããã¯å€åçŽèг-åŸã§äœ¿çšããå¯èœæ§ãæ®ããŸããã ããã§ããåå«ã®ã»ãããååŸããæ©èœããã圌ããã©ã®ããã«èŠããã¹ããã«äœããã®äŸåãæåŸ
ããããšã¯è«ççã§ãã ããã§äžæ¬¡ã¹ã¯ãªãŒãã³ã°ã劚ãããã®ã¯äœããããŸããã ããããä»ã®ãšãã-䜿çšãããŠããŸããã
å¯èœãªçªç¶å€ç°ãååŸããããã®æ©èœ public function FindMutationVariants($wordFrom, $wordTo, $wordLen, $disabledMutationPos, $excludedWordKeys) { $variants = []; for ($mutPos = 0; $mutPos < $wordLen; $mutPos++) {
3ïŒèŸæžãæäœãã
ã¢ã«ãŽãªãºã ã¯åªããŠããŸããããã¡ã€ã«ïŒããŒã¿ïŒã®ãœãŒã¹ããã¡ã€ã«ã®åœ¢åŒã§ãããæ€çŽ¢ã¢ã«ãŽãªãºã ããå¹ççã«å€ãã®äœæ¥ãè¡ãå¿
èŠããããŸãã
ã¯ãããã®èŸæžãã¡ã€ã«ã¯ã¢ã«ãã¡ãããé ã«ãœãŒããããŠããŸãã ãããŠãããã»ã©å·šå€§ã§ã¯ãªããçŽ1 MBãããªãã®ã§ãRAMå
šäœã§åäœããããã«å®å
šã«ããŠã³ããŒãã§ããŸãã
ãã®å Žåããã¡ãããèšèªã«å¿ããŠé
åã®åœ¢åŒã§ããŒã¿æ§é ã«ãããŒãããã³ã¬ã€ã¢ãŠããããå ŽåãèŸæžã¯ããå€ãã®ã¡ã¢ãªãæ¶è²»ããããšãçè§£ããå¿
èŠããããŸãã PHP 5.4ã®å ŽåãããŠã³ããŒããã圢åŒã®èŸæžã®ééã¯çŽ6 MBã§ããããšã倿ããŸããã
ããã«ããå°æ¥ãèŠæ®ããŠãèŸæžã¯ããã«éããªããŸãã
[ããŒã¿ããŒã¹ã®è«ççãªäœ¿çšã«ã€ããŠã®æåã®èããããã«ãããŸãã ããããç§ã¯åœŒå¥³ãªãã§æåã«ãããããããšããããšã«æ±ºããŸããã]
ãã ãïŒ
-PHPã§ã¯array_searchã¯ãã ãœãŒãããŒã«ã§ããããã¡ãã£ãšãé
åããœãŒãããããã€ããªãæ¢ããŸãããšããå¯èœæ§ã¯ãããŸãããä»ã«é©åãªæ©èœã¯ãããŸãããããªããããŒã䜿ã£ãŠæŸèæããã¬ã€ãããã¯ãããŸããã§ããã
-ãœãŒããããé
åã«ã¯ã€ãã¯ãã€ããªæ€çŽ¢æ©èœããã£ããšããŠãããšã³ãã¹æåãå«ããã¹ã¯ã§æ€çŽ¢ããåé¡ããããŸãã
3.1ïŒäžæã§ãªãå€ã®æåã®ãœãŒããããé
åã§ã®ã¯ã€ãã¯æ€çŽ¢
æåã®åé¡ã¯ãPHPçšã®ãã€ããªæ€çŽ¢ãã€ã¯ã«ãã£ãŠè§£æ±ºãããŸãã ç§ã¯å人ããä¹è»ãåããŸããã
terenceyim.wordpress.com/2011/02/01/all-purpose-binary-search-in-php ã
ãã®ããŒãžã§ã³ã®ãã€ããªæ€çŽ¢ã¯ãæãäžè¬çãªç®è¡æŒç®ã§ãããé£ç¶ããæŽæ°çªå·ïŒããšãã°ã0ãN-1ã®ããŒïŒã§ãœãŒããããé
åã§ã®äœæ¥ã«é©ããŠããããšã«æ³šæããŠãã ããã
ç§ã¯çå®ããã®ãŸãŸã§ã¯ãªããæ€çŽ¢ãä¿®æ£ããŸããã äžæã§ãªãèŠçŽ ã®é
åã®å Žåãpicikã¯æåã«èŠã€ãã£ãçããæ€çŽ¢ã§åæ¢ããŸããã ãããŠãé
åã®åãèŠçŽ ããããŒã§æåã®äœçœ®ãäžããå¿
èŠããããŸããã éèŠãªã®ã¯ãåŸç¶ã®ã¢ã«ãŽãªãºã ãåçŽåã§ããããã«ããããšã§ãããŸããçããã»ãããå埩åŠçããå Žåã¯ãé
åã®äžã®ããŒããã©ãã ãã§ãã
äŸïŒMUAãæ¢ããŠããŸããã¢ã¬ã€ããããŸãïŒä»¥äžãåç
§ïŒ[... 99-MSïŒtïŒITELã100-MUïŒsïŒAã101-MUïŒkïŒAã102-MUïŒpïŒAã103-MUïŒ rïŒAã104-MUïŒxïŒAã105-MUïŒrïŒAVEYã106-MUïŒpïŒAVEYNIK ...]éåžžã®ãã€ããªæ€çŽ¢ã¯ã次ã®å埩ã§ãããããŸããããšãã°ãããŒ102ã«å
¥ããŸããèŠçŽ ã®å€ïŒMUAãåèªMURAããæ¥ãŸããïŒ ïŒã¯åžæãããã®ãšçããïŒMUAãMUHAã®åå«ãæ¢ããŠããŸãïŒããã®ããŒã¯ç§ãã¡ã«å±ããŸãã ãããŠããã¹ãã¢ãããšãã¹ãããŠã³ã§ããžãã¯ãä¹±éã«ããŸãã 倿Žãããã¢ã«ãŽãªãºã ã¯ãæåã®ããŒã§ããããŒ100ãæ€åºããŸãããã®åŸã==èŠçŽ ãæ€çŽ¢ããããŸã§ãé
åãé æ¬¡äžã«ç§»åã§ããŸãã
倿Žããããã€ããªæ€çŽ¢ function binary_search(array $a, $needle, $first = 0, $last = NULL, $compare = 'default_cmp') { if ($last === NULL) { $last = count($a); } $lo = $first; $hi = $last - 1; while ($lo <= $hi) { $mid = (int)(($hi - $lo) / 2) + $lo; $cmp = call_user_func($compare, $a[$mid], $needle); if ($cmp < 0) { $lo = $mid + 1; } elseif ($cmp > 0) { $hi = $mid - 1; } else { $hi = $mid - 1;
3.2ïŒè£å©ç䌌åèªèŸæž
2çªç®-ç§ã¯ãRAMããããããªãèããã ããããšèããèŸæžãéããŠãããããããšã«ããŸããã içªç®ã®èŸæžãã¡ã€ã³èŸæžããäœæãããåèªããiçªç®ã®æåãåãåãããŸãã MACHINE =>ïŒi = 2ïŒMACHINEãšå
¥åããŸãã ãã®ãããªèŸæžã®å ŽåãèŸæžãããäœçœ®ã§æåãããã¯ã¢ãŠããããå Žåã«åããã€ããªæ€çŽ¢ã䜿çšã§ããŸãã
ãšã³ãã¹æåãåèªã®å
é ããé¢ããããŠããããã®äœçœ®ã«ãµãèŸæžããªãå Žåãæ¬¡ã®ããã«é²ã¿ãŸãã
-ã¡ã€ã³èŸæžã§ãéåããªãå§ãŸãããæ¢ããŠããŸã
-èŠã€ãã£ãäœçœ®ãããæ€çŽ¢ããªããèŠçŽ ïŒåèªïŒãå§ãŸããå¿
èŠãªé·ããæã¡ããããã®åèªããã¹ãŠããªã¢ã³ãã«éããŠãå¿
èŠã«å¿ããŠçµãããŸã§ãé
åãåçŽã«äžã£ãŠãããŸãã
æ€çŽ¢ã¯æåã®äœçœ®ããã€ããªæ€çŽ¢ã«ãã£ãŠæ±ºå®ãããèŸæžã®éãããéšåãééããããã3ã€ã®ãµãèŸæžã§ãã4æåç®ä»¥éãããã¯ã¢ãŠãããå Žåã®æ€çŽ¢ã¯èŽåœçãªããã«ããã¯ã§ã¯ãªããªããŸããã
ã¡ã¢ãª/é床ã®èš±å®¹å¯èœãªåŠ¥åç¹ã¯ã3ã4åã®ãµãèŸæžã䜿çšããããšã§ãã
ãããšã-ããŸãŠãã®å€æã®
å³ ïŒ
æ§æ | TããŒãèŸæž | Tæ€çŽ¢ | Tåèš | RAMã®æ¶è²» |
---|
åºæ¬èŸæžã®ã¿ | 0.02ç§ | 137ç§ | 137ç§ | 6 Mb |
1ã€ã®èŸæž | 0.61ç§ | 16.40ç§ | 17.01ç§ | 25 Mb |
2ã€ã®èŸæž | 1.20ç§ | 4.73ç§ | 5.93ç§ | 44 Mb |
3ã€ã®èŸæž | 1.85ç§ | 2.72ç§ | 4.57ç§ | 62 Mb |
4èŸæž | 2.42ç§ | 0.82ç§ | 3.24ç§ | 79 Mb |
5ãµãã¯ãŒã | 2.98ç§ | 0.77ç§ | 3.75ç§ | 97 Mb |
ãã§ãŒã³ïŒãããšã-ãã ã©ã-ããã©ãã¯ã-ããã³ãã£ãã£ããã-ãæš¹ç®ã-ãããŠã¢ãã³ã·ã-ãã³ã¢ãŒã³ã-ãã¯ã©ã³ã-ãã¯ããŒã³ã-ã象ãïŒ9ãã©ã³ãžã·ã§ã³ïŒ
ãã¡ããã4æåã®ããšãšãŸãŠãåãã®ã«5çªç®ã®èŸæžïŒåèªãã5çªç®ã®æåãåé€ãããçµæã®èŸæžãåãœãŒããããïŒã¯å¿
èŠãªãããšã¯çµ¶å¯Ÿã«çã«ããªã£ãŠããŸãã ããããå¥ã®äŸãèŠãŠã¿ãŸãããã
æ¯èŒã®ããã«ããæŸããããã¿ã³ãã¯è³ªããžã®å€æïŒ
-4ã€ã®ãµãèŸæžã®å ŽåïŒããŠã³ããŒã2.41ç§ãæ€çŽ¢1.07ç§ãåèš3.48ç§
-5ã€ã®ãµãèŸæžã®å ŽåïŒããŠã³ããŒã3.01ç§ãæ€çŽ¢0.36ç§ãåèš3.37ç§
ã€ãŸã 5çªç®ã®èŸæžã¯ãèŸæžããã£ãã·ã¥ãããã³ã¢ã«ãŽãªãºã ã®ã¹ãã¬ãŒãžãæé©åããåŸã«ã®ã¿è¿œå ã§ããŸãã ãããŠä»ã圌ã¯RAMã®éå°æ¶è²»ã«éããŸããã
ããã...ãããããããã¯ã©ããããããç§ã®èã®äžã§äœãšãèããããçšåºŠã«æ©èœããããŒãžã§ã³ã§ããããã¯ç§ã«åããªãã£ãã ãããŠãç§ã¯ããšã®ãŸãŠãžã®å€æãå®ç§ã«ãç¶ããŸããã
æåã®ããŒãžã§ã³ ïŒPHP 5.4ïŒ
*
*ãªã©ãã¯ã¹ããç®ãäžæ¯ã®ã³ãŒããŒããããŠãã®ç²Ÿç¥ã§äžæåæ¢ããã®ã¯è¯ãããšã§ã
*

象ã®è³ãæããå£çŽ
第äºã«ããã©ã³ã¯ãããŒã«ããããŠä»
ãã³ã¯ã®ããšãå¯å®€ãé£ã¶
ããã¯ãã¢ã«ã¶ã€ãã£ãŠé ãå©ããŸãã
kekc @ hohmodrom.ru
第äºç
ç§ã¯ãããããšãããŸããã
ãã§ãã¯ã远å ããŸããã
éãã«çè§£ã§ããªãæ»ã®ä»£ããã«ãäŸå€ãæããããšã远å ããŸããã
æ§æã匷調衚瀺ããŸããã
ããŒã¿ããŒã¹ã«åãæ¿ããæºå-ããŒã¿ããžãã¯ãå¥ã®ããããŒã«çµã¿èŸŒã¿ãŸããã
ç ã¢ãŒããã¯ãã£äžã
ããããããã¯é¢çœããããŸããã ããã§æãè峿·±ã倿Žã¯ãããŒãµãŒãã©ã³ãã ãã¹ãã¡ã¯ã¿ãŒãããã³æåã®åšæ³¢æ°ç¹æ§ã«åºã¥ãæšå®é¢æ°ã§ãã
1ïŒããŒãµãŒ
ãœãŒã¹èŸæžã¯ååã«å€§ããã§ãããäœããã®çç±ã§äžè¬çãªåèªããååšããªãããšã«æ°ä»ããŸããã ãããŠæ³šæïŒïŒïŒ
象ã¯ããŸããã§ãã ïŒ
象ãã
象ãã象ããã£ãšã å·®å¥
ã¯ããèšå®ãããç®æšãéæããããã«ïŒãã©ã€ã䜿ã£ãŠè±¡ãäœãããïŒãæåã®ããŒãžã§ã³ã§ã¯ãç¹åŸŽçãªãã§ãŒã³ã®åçãã°ãŒã°ã«ã§æ€çŽ¢ããªããã°ãªããŸããã§ããã
[ãããŠãã¯ãããã®èŸæžã§åããŠïŒsetlocaleãšmb_stringã®æ£ãããã±ãŒã«ã«ãããããããåŸç¶ã®phpãœãŒãã³ãŒã³ããïŒã®åèªãçªç¶èŸæžã®æåŸã«ããããšã«ã€ãŸãããŸããã]
æè¡çãªäœ¿çšã«é©ããèŸæžããã§ã¯ãªããå°ãªããšãã©ãããã§ãã远å ã®åèªã䜿çšããŠãã®ç¹ãä¿®æ£ããããšã«ããŸããã
å€ãã®ãªã³ã¯ã
chyjik.narod.ru/index.htmã«ã€ãªãããŸãããã圌ã¯
ãã®å¹Žã«Narod.ruã賌å
¥ãããããçºé
µã®ç®çã§ç Žå£ããéªæªãªYandexã«ãã£ãŠ
é·å¹Žçªç¶å¿ããããŠããŸããã
ããããããã§ã¯çŽ æŽããã
Webã¢ãŒã«ã€ãã圹ã«ç«ã¡ãŸãããåœŒã«æè¬ããŸãã
ä¿åããããã¯ãã¹ã¯ãŒãèŸæžãå
šäœãä¿åããdata / psrc /ã«ä¿åããéåžžã®ã¹ã±ãžã¥ãŒã«ã§parse.phpãäœæããŸããïŒããã¯äœåºŠãä¿®æ£ããŸããããªããªãããã®ãµã€ãã¯MS Wordã§ãã¬ã€ã¢ãŠãããŸã£ããåãã§ã¯ãããŸããã§ããïŒã-ããŒã»ã³ãã®èŸæžã50ïŒ
æ¡å€§ããŸããã
2ïŒã©ã³ãã ãã¹ä¿æ°
ãã§ãŒã³ã¯åžžã«åãã§ããããšã倿ããŸãããããã¯äžè¬ã«æããã§ãã ããã¬ã€ããããçªç¶è¯ããªããããšãå¯èœã«ããããã«ã圌ã¯è©äŸ¡é¢æ°ã«mt_randã®ã©ã³ãã ä¿æ°ãå°å
¥ããŸããã ãã£ãšé¢çœããªã£ãã æã
ãç§ããããŸã§ç¥ããªãã£ãæ°ãããããçãéãæ¬åœã«èŠããŸããã
ãã¡ããããã€ãã¹é¢ããããŸã-äžå¿«ãªã«ããã«ã«ã¯æ€çŽ¢ãããããã§ãŒã³ãèŠã€ãããŸããã ãŸãã¯ãéåžžãããå°ãé·ããªããŸãã ããããããã§ãã¡ã€ã³ã±ãŒã¹ã¯éåžžã«å®å®ããŠããŸãã
ããå
·äœçã«ã¯ãã©ã³ãã æ§ããéåžžã«è»œããå°å
¥ãããŸãã-æ°ããäžä»£ã®ãã£ãããã¹ã泚æãããšãã®æ¯èŒé¢æ°ã§-åããã£ãããã¹ã¹ã³ã¢ãæã€åèªãã©ã³ãã ãªé åºã§é
åããå§ããŸããã
3ïŒè©äŸ¡é¢æ°
FLYããããšã¬ãã¡ã³ãã¯10ã®ãã©ã³ãžã·ã§ã³å
ã§ããªãé®®æã«ããŸããããŸããã
ãããïŒïŒïŒ
FLYããé³ç¯ãšããåèªãåŸãããŸãã...é åºã«60-70ïŒïŒïŒã«ç§»è¡ããŸãã
ãããããšã¬ãã¡ã³ãããã1ã ãé·ãããå¿
èŠãããããšã¯æããã§ãã ç·ã¯æããã§ãã è»ã¯ãããŸãããããã¯ã¢ã«ãŽãªãºã ã«ãããã®ã§ãã ã¢ã«ãŽãªãºã ãšã©ãŒã è©äŸ¡é¢æ°ãšã©ãŒã
圌ã¯å€ãã®å®éšãããŸãããç§ã¯é ããŸããã
ã¹ã³ã¢ã5æ¡çããªããåŸç¹ã«çããã倿Žãå ããããŸããã ããããããã¯å¿
èŠãªçµæã§ã¯ãããŸããã
æããã«ã調æŽã®åé¡ã¯å€ä»¥é解決ãããŠããªãããšç§ã¯èããã åé¡ã¯äœã§ããã éãã¯äœã§ããã æåŸã®æçŽã®éããã¯ããäºå®ã èšèããããããã«èšèããããŸãã ãããã®æåã¯ã©ã®ããã«ç°ãªã£ãŠããã®ã§ããã¹ãŠããšãŠãæªãã®ã§ãã...
ããã ãã 䜿çšé »åºŠïŒ ãããŠãããã«å¿ããŠãé¢é£ããå€ç°ããªã¢ã³ãã®æ°ã ã€ãŸãããG = Gã®ç¹ã§å®å
šãªããããã¯ããHãMãKã...ïŒ= Gã®ãããã§ã¯ãªãããããæªãããå°ãªããšããé©åæ§ããè©äŸ¡ããã®ã«ããŸãè¯ããªãå ŽåããããŸãã ãããããã¡ãããããããããªãYãbãuã...ïŒ= Gããããã¯ããã«åªããŠããŸãã
wikiããã®æåã䜿çšããé »åºŠã®è¡šãåããŸããã
ïŒå®éã«ã¯ãããã¯å®å
šã«æ£ããããã§ã¯ãããŸãããåè©ã®æ¢åã®èŸæžã«åŸã£ãŠé »åºŠãèæ
®ããå¿
èŠããããŸãããåºæ¬çãªéãã¯ã»ãšãã©ãããŸããïŒã ã³ãŒãã«ãããšããã«edæã ããŸãçŸãããããŸãããã¯ãããããããããŸã§ã«ããŠãã ããã æ¯é³ãšåé³ã«åŸã£ãŠãæåã®é »åºŠãæ£èŠåãããé
åã«ã«ããããæãäžè¬çãªæ¯é³/åé³ã«æ£èŠåããŸãã è©äŸ¡æ©èœãæžãçŽããŸããã ISïŒ è±¡+ 1ïŒ
ã¯ãããããŠè±¡èªäœãããã«1ã€ãŸãã¯2ã€ã®ã¹ããããæ©ãå§ããŸããã
æåã®é »åºŠã䜿çšããåæåæïŒ
public function __construct() {
è©äŸ¡é¢æ°ïŒ
public function GetWordScore($word, $comparationWord) {
«»-«»:
æ§æ | T | T | T | |
---|
| 0,04 | 210 | 210 | 9 |
1 | 0,98 | 26,16 | 27,14 | 42 |
2 | 1,97 | 9,97 | 11,94 | 72 |
3 | 2,98 | 4,72 | 7,70 | 102 |
4 | 3,97 | 1,37 | 5,34 | 130 |
5 | 4,96 | 1,30 | 6,26 | 158 |
: «» â «» â «» â «» â «» â «» â «» â «» (7 ).
, ( 0,68 1,03 , +51%), . , , , â , , , .
, , 4 . . , . , , .
2- ( PHP 5.4).
*
* , .
* ,
* , .
*

:
, ,
.
âŠ
- !
, . - ( MySQL 5.5) , , .
1) ?
, memcache â , , , - mysql-. , .
â 4 . 0,8 . MySQL, «» 0,002 0.95 . , , - , .
, 1 5 .
2)
, , 2 , - SELECT . MySQL- . , , . .
DictionaryMysqlMapper ... private $_cachedWords; private $_cachedWordKeys; ... public function GetWord($key) { if (isset($this->_cachedWords[$key])) { return $this->_cachedWords[$key]; } $wordRow = $this->_db->FetchOne("SELECT * FROM `word` WHERE `id` = " . $this->_db->QuoteValue($key)); $this->_cachedWords[$key] = $wordRow['value']; return $wordRow['value']; }
3)
, , 100 50 . , 20 , 50.
. 1 0,5-0,6 .
ã ãã
3- ( PHP 5.4, MySQL 5.5)
*
* , , « » )
* .
*

,
ãšãŠã
:
â
!
() , « »
ãŸãšã
PHP 5.4 + MySQL 5.5, 0,5 . 9 :
'from' => "" 'to' => "" 'runMode' => "MySQL" 'list' ... '0' => "" '1' => "" '2' => "" '3' => "" '4' => "" '5' => "" '6' => "" '7' => "" '8' => "" 'timeLoad' => ", : 0,008000 ." 'time' => " : 0,551032 ." 'status' => "."
, PHP ( 100 ), . , , .
次ã¯ïŒ
, , . :
- , : , . , 2-4 . , , .
- ? . . , â . . , , .
- Redis? Memcached?
- N ,
- ? , . .
- CP1251? Utf-8 . , , , . 1 , 2 . .
- JavaScript ? , , â , , .
- C++?
- , .
⊠, . , ,
Diamond-Square .
PSïŒ, ,
.
! - . ãæž
èŽããããšãããããŸããã