ææ²ã10ç¹ã ãã¨ã£ã¦1550/3000ä½ãæ¥æ¬äººã§ã¯89ä½ã ã£ãããã§ãã
ã½ã¼ã¹ã³ã¼ãã¯こちらã
ã¨ããããç®æ¨ã®Round 2 åºå ´ã¯æãããããæºè¶³ã§ãã
â¦â¦ã¨ããã¤ã¤ãããã£ã±ã欲ãè¨ããã§ãã¾ãã®ã人éã
ãã¼ãã¼ã©ã¤ã³ã®31ç¹ã¯ãããã¡ãã£ã¨é å¼µãã°æãå±ããããªæ°ããã¾ããã
æ¥å¹´ã¯ Round 3 åºå ´ãç®æãããã§ããã
2ã¶æåãç§ã«ã¯ python ã®ç¥èãããã°ã©ãã³ã°ã³ã³ãã¹ãã®ç¥èãã»ã¼çç¡ã§ããã
1ã¶æåãpython ã¯å°ãæ¸ããããã«ãªãã¾ããããRound 1 ã®åé¡ã¯ã¾ã ç§ã«ã¯é£åã§ãã(ä»ãç°¡åã ã¨ã¯æã£ã¦ã¾ããã)ã
ããã¦ä»ãRound 2 ã®è§£èª¬ãè¦ã¦ç解ã§ããç¨åº¦ã«ã¯ç«¶æããã°ã©ãã³ã°ã®ãã¨ãç解ãã好ããªè¨èªã§ã³ã¼ãã£ã³ã°ããã¨è¨ããã¦ä¸çªã«åºã¦ããã®ã python ã«ãªãã¾ããã*1
人ãªãã¦2ã¶æããã°å¤ããããã®ãã¨ããã®ãããããã¦å®æã§ãã¦æ¬å½ã«ããã£ãã§ãã
ä½ãããããã楽ããã£ãï¼
ããã ãé ããã«å転ãããéã³ã¯æ»
å¤ã«ããã¾ããã
ãã£ã¨ããã°ãããã£ã¦ãããã«ã¯ããã¾ããããããããã趣å³ã¨ãã¦ç¶ãã¦ããããã§ããã
ã¾ããä»åãè·å ´ã®ä»²éãèªã£ã¦ã¿ã¾ããã
å»å¹´ã¯ä¸äººåå ãã¦ããã¦ä¸ç·ã« Round 1 ã¾ã§æ¥ã¦ããã¾ããããä»å¹´ã¯ããä¸äººåå ãã¦ããã¾ããã
ä¸äººã¯äºé¸ã§ãã¡ã§ããããããä¸äººã¯ Round 1 ã«å°éãã¦ããã¾ããã
æ¥æ¬äººã®åå è
ç´400人ã®ãã¡ã1%è¿ãã¯èªåã®è·å ´ã®äººéã¨ããã®ã¯ãªããªãé¢ç½ãã§ãã
ããã¦ãã¨ã£ã¦ãæããã£ã¦ãããã®ã§é常ã«æºè¶³ã§ãã
èªåèªèº«ãã²ãã£ãã§ããããããã£ã¦ãã¬ã¤äººå£ãå¢ãã¦ããã¨æ¥½ãããªã£ã¦ãã¾ããã
åå¼·æ¹æ³ã¡ã¢
ä»åç§ãã©ããã£ã¦åå¼·ããããã¡ã¢ãã¦ããã¾ãã
ãããªåå¿è
ã®ç§ã®æ¸ãããã®ã§ãã誰ãã®å½¹ã«ç«ã¤ããããã¾ããã®ã§ã
ä¸å¿ãã®ããæ¹ã§ Round 1 ã¯çªç ´ã§ãã¾ããã
éå»åã解ã
Practiceモードãè¦ãã°ãããããã®åé¡ãããã¾ãã
ã¾ãããã解ãã¾ãã
æåã¯ä½ãè¦ãã«è§£ãã¾ããã©ããèãã¦ãããããªãã®ã§30ã1æéããããç®å¦ã«ã
次ã«è§£èª¬ãèªã¿ããã®ä¸ã§ããããã¦å®è£
ãã¾ãããããmax 1æéãããã§ã
ã§ããã°ãã¡ãã¨åãã³ã¼ããæ¸ãããã¨ããã§ãããæ
£ããã¾ã§ã¯å®è£
ãã¾ã¾ãªããªãããããã¾ããã
ã»ã©ã»ã©ã«åãä¸ãã¾ãã
ããã¦ãCode Jam 2010 Statisticsãè¦ã«è¡ããèªåã®ä½¿ã£ã¦ããè¨èªã§ãã®åé¡ã解ãã¦ãã人ã®è§£çãåã£ã¦ãã¾ãã
ã¾ãã¯åçµãã²ãããèªåã®æã§æ¸ãåãããªãºã ãæ´ã¿ã¾ãã
次ã«è§£æãä¸è¡ä¸è¡èªãã§ãã©ããããã¸ãã¯ã§åãã¦ãã®ãããã¡ãã¨ææ¡ãã¾ãã
ã§ããã°2人ãããã®äººã®è§£çãè¦ãã»ããããã§ããåãåé¡ã§ãã¢ããã¼ãã®ä»æ¹ãéã£ãããå¾®å¦ãªã¯ã»ã®éããå¦ã¶ãã¨ãã§ãã¾ãã
æå¾ã«ãæ°æ¥ç©ºãã¦ããããä¸åº¦è§£ãç´ãã¾ããå®è£
ã§ããªãã£ãã解説ãä¸ä½è
ã®ã½ã¼ã¹ã³ã¼ããèªãã§å¾©ç¿ãã¾ãã
å®è£
ã§ããã®ã§ããã°ãä»åº¦ã¯ã¹ãã¼ããä¸ãã¦ç´ æ©ãã³ã¼ãã£ã³ã°ã§ããããã«ãã¾ãã
ãããªæãã®ç·´ç¿ãã²ããã2ã¶æç¶ãã¾ããã
ã¨ãã£ã¦ããpython ã§ã¾ã¨ãã«è§£çãåå¨ããã®ã¯ Round 1ã¾ã§ã§ãRound 2ããã¯èª°ã解ãã¦ããªãåé¡ãçµæ§ããã¾ãã
Round 2以éã®åé¡ã¯ C++ ã®è§£çã python ã«ç§»æ¤ãããã¨ããä½æ¥ããã¦ã¾ããã
ãã®ããããã£ã¦Round 2ã®åå¼·ã¹ãã¼ãã¯ããã¾ã§ã«æ¯ã¹ããªãè½ã¡ã¾ããããããã§ãéåã¨åå¼·ã«ãªãã¾ããã
èªãã§å¦ã¶(ãããã®è¨äº)
TopCoderã®Algorithm Tutorialsããid:chokudai ããã® itmedia ã§ã®é£è¼è¨äºãæå¼·æéã¢ã«ã´ãªãºãã¼é¤æè¬åº§ã(一例)ãªã©ãçèªãã¾ãããitmedia ã®è¨äºã¯é£è¼ãªã®ã§ããä¸è¦§ã«ãªã£ã¦ãã¾ãããããã£ã¦æ¢ãã¦ãã ããã
å®éã«åé¡ã解ãã¦ããèªãã¨ãã¨ã¦ãåå¼·ã«ãªãã¾ãã
èªãã§å¦ã¶(æ¬)
æ°å¦çåºç¤ã¨ãã¼ã¿æ§é (ã¢ã«ã´ãªãºã ã¤ã³ãããã¯ã·ã§ã³)
- ä½è : T.ã³ã«ã¡ã³,R.ãªãã¹ã,C.ã·ã¥ã¿ã¤ã³,C.ã©ã¤ã¶ã¼ã½ã³,Thomas H. Cormen,Clifford Stein,Ronald L. Rivest,Charles E. Leiserson,æµ éå²å¤«,岩éåç,æ¢ å°¾åå¸,å±±ä¸é å²,åç°å¹¸ä¸
- åºç社/ã¡ã¼ã«ã¼: è¿ä»£ç§å¦ç¤¾
- çºå£²æ¥: 2007/03
- ã¡ãã£ã¢: åè¡æ¬
- è³¼å ¥: 13人 ã¯ãªãã¯: 378å
- ãã®ååãå«ãããã° (60件) ãè¦ã
ã¢ã«ã´ãªãºã ã®è¨è¨ã¨è§£æææ³ (ã¢ã«ã´ãªãºã ã¤ã³ãããã¯ã·ã§ã³)
- ä½è : T.ã³ã«ã¡ã³,R.ãªãã¹ã,C.ã·ã¥ã¿ã¤ã³,C.ã©ã¤ã¶ã¼ã½ã³,Thomas H. Cormen,Clifford Stein,Ronald L. Rivest,Charles E. Leiserson,æµ éå²å¤«,岩éåç,æ¢ å°¾åå¸,å±±ä¸é å²,åç°å¹¸ä¸
- åºç社/ã¡ã¼ã«ã¼: è¿ä»£ç§å¦ç¤¾
- çºå£²æ¥: 2007/03
- ã¡ãã£ã¢: åè¡æ¬
- è³¼å ¥: 10人 ã¯ãªãã¯: 169å
- ãã®ååãå«ãããã° (48件) ãè¦ã
ã¢ã«ã´ãªãºã ã¤ã³ãããã¯ã·ã§ã³ãè²·ãã¾ããã
å³å
¥ãã§ãããåãããããã§ãã
ããèªãã§ã²ãããåºç¤ãåå¼·ãã¦ã¾ããã
è·å ´ã§ã®å§èª
ã¹ãã ã®ããã«ãè·å ´ã®èå³ãããããªäººãã¡åãã«éå»å解説ã®ã¡ã¼ã«ãæ¯æ¥éãç¶ãã¦ã¾ããã
ããã¯èªåã«ã¨ã£ã¦ãã¡ãªããã®ãããã¨ã§ãã
人ã«èª¬æããã«ã¯ã¾ãèªåãç解ãã¦ããªããã°ããã¾ãããããæèã®æ´çã«é常ã«å½¹ã«ç«ã¡ã¾ããã
ã¾ã¨ã
ã¾ããããªæãã§ãå¥ã«å¤§ãããã¨ãã¦ã¾ããã
è·å ´ã®å¾è¼©ã«ã¯ãåé¨åå¼·ã¿ããã§ãããã¨è¨ããã¾ããã
確ãã«ããããããã¾ãããã¨ãããåå¼·ã¨ããã®ã¯ãã¿ã¼ã³åãåºæ¬ãªã®ã§ãã©ãããåéã®åå¼·ã§ãã£ã¦ãåºæ¬ã¯åãã¨æãã®ã§ãã
æ¬å½ã¯ãã£ã¨ã³ã³ãã¹ãã«åºå ´ãã¦å ´æ°ãè¸ã¿ããã£ãã®ã§ãããTopcoder 㯠python ã§ã¯åå ã§ããªãã®ã§ããªããªãç·´ç¿ã§ããå ´æãããã¾ããã*2
Java ã C++ ã§æã人㯠Topcoder ã«åå ãã¦ç·´ç¿ããæ¹ãããã¨æãã¾ãã
é¢é£è¨äº
*1:ã¨ãã£ã¦ãæ¥åã§ã¯ã¾ã 使ã£ã¦ãªãã®ã§æ¬å½ã«ä½¿ãç©ã«ãªããã¨ããã¨èªä¿¡ãããã¾ããã
*2:â¦â¦ã¨æã£ãããæè¿ codeforces ã¨ãã競æããã°ã©ãã³ã°ã®ãµã¤ããã§ãã¾ããããããªã python ã ruby ã haskell ã¾ã§ã使ããã¨ãã§ãã¾ãã