2018å¹Žãæ©æ¢°åŠç¿ãã¢ãã€ã«éçºãããã³ããšã³ãã®3ã€ã®YandexãBlitzã³ã³ãã¹ããéå¬ããŸããã 3çªç®ã®ã³ã³ãã¹ããæè¿éå¬ãããŸãã -åè³è
ã®çãããããã§ãšãããããŸãïŒ ãããŸã§ã®éã2çªç®ã®ã¢ã«ãŽãªãºã ã«æ»ããããšæããŸããããã§ã¯ãAndroidãšiOSçšã®ã¢ã«ãŽãªãºã ãšã©ã€ãã£ã³ã°ãœãããŠã§ã¢ã®ãžã£ã³ã¯ã·ã§ã³ã§ã¿ã¹ã¯ãææ¡ãããŸããã Yandexã§ã®ã¢ãã€ã«éçºè
ã®å°äœã®åè£è
ã¯ããã®ãããªåé¡ã解決ããçµéšããæ©æµãåããã§ããã ã ãããã®ããã€ãã®è©³çްãªåæãèªãã§ãã ããã ãŸããBlitzã«åå ããªãã£ãå Žåã¯ããŸãèªåã§è§£æ±ºããããšããå§ãããŸã ã

ãã¬ã¹äŸçµŠãã®ã¿ã¹ã¯
å
¥ã | ãããã« | å¶éæé | ã¡ã¢ãªå¶é |
---|
æšæºå
¥åãŸãã¯input.txt | æšæºåºåãŸãã¯output.txt | 15ç§ | 15ã¡ã¬ãã€ã |
Nikaã¯ã倧æã¬ã¹äŒç€Ÿã®ããããããŒãžã£ãŒãçç£èšç»ãæ¯æŽããããã®ã¢ããªã±ãŒã·ã§ã³ãéçºããŠããŸãã
å瀟ã¯ããã€ãã©ã€ã³ããd 1 ... d i ... d nããã¡ãŒãã«é¢ãããnåã®ãã£ãŒã«ããæ€èšããŠãããv 1 ... v i ... v nã®ã¬ã¹ãŠããããçç£ã§ããŸãã ãã£ãŒã«ãããšã«åå¥ã®ã©ã€ã»ã³ã¹ã販売ãããŸããã©ã€ã»ã³ã¹ã®ã³ã¹ãã¯s 1 ... s i ... s nã§ãã
ãã£ãŒã«ããé«ééè·¯ã«æ¥ç¶ããã«ã¯ããã€ãã©ã€ã³ãæ§ç¯ããå¿
èŠããããŸãã ããŸããŸãªçš®é¡ã®ãã€ããæ·èšã§ããè«è² æ¥è
ããã®äŒç€Ÿãæ¯æŽããŠããŸãã ãã€ãã®é·ãïŒl 1 ... l i ... l m ïŒãšäŸ¡æ ŒïŒp 1 ... p i ... p m ïŒã¯äºãã«ç°ãªããŸãã 奜ããªããã«çµã¿åãããŠäœ¿çšââã§ããŸãã
å瀟ã¯kæã®ã³ã€ã³ãææããŠãããã§ããã ãå€ãã®ã¬ã¹ãå
¥æããããšèããŠããŸãã
è«è² æ¥è
ã«æé©ãªæ³šæãåºãã°ãäŒç€Ÿã¯ã©ããããçç£ã§ããã§ããããïŒ
ãã€ãã©ã€ã³ã¯ããã£ãŒã«ããããã€ãã©ã€ã³ãŸã§ã®è·é¢ããé·ãå ŽåããããŸãã
æåã®è¡ã«ã¯ãæŽæ°kâ€10 5ãå«ãŸããŠããŸãã
2è¡ç®ã«ã¯ãnâ€15ã®æŽæ°ãå«ãŸããŸãã
次ã®nè¡ã«ã¯ã3ã€ã®æŽæ°d iâ€100ãv iâ€100ãs iâ€100ãå«ãŸããŠããŸãã
æ°åã¯ã¹ããŒã¹ã§åºåãããŸãã
次ã®è¡ã«ã¯ãæŽæ°mâ€15ãå«ãŸããŠããŸãã
次ã®mè¡ã«ã¯ã2ã€ã®æŽæ°l iâ€100ããã³p iâ€100ãå«ãŸããŸããæ°åã¯ã¹ããŒã¹ã§åºåãããŸãã
çããããå¯äžã®è¡ã
äŸ
å
¥ã | ãããã« |
116
3
58 7 50
81 71 56
52 57 31
3
47 9
1 25
18 61 | 57 |
è§£æ
ãŸããè¡šèšæ³ãå®çŸ©ããŸãããã ãªããžã§ã¯ãã®ã¯ã©ã¹ãããããã©ã¡ãŒã¿ãæã€DepositïŒãããžããïŒããããšããŸã $ã€ã³ã©ã€ã³$ Dd_ {i} $ã€ã³ã©ã€ã³$ ïŒãªã¢ãŒãïŒ $ã€ã³ã©ã€ã³$ Dv_ {i} $ã€ã³ã©ã€ã³$ ïŒçç£éïŒããã³ $ã€ã³ã©ã€ã³$ Ds_ {i} $ã€ã³ã©ã€ã³$ ïŒã©ã€ã»ã³ã¹è²»çšïŒã ãã®ã¿ã€ãã®ã€ã³ããã¯ã¹ãªããžã§ã¯ãã¯å€æ°iã«ãªããŸãã ãã©ã¡ãŒã¿ãŒãæã€Pipelinerãªããžã§ã¯ãã¯ã©ã¹ããããŸã $ã€ã³ã©ã€ã³$ PPl_ {j} $ã€ã³ã©ã€ã³$ ïŒè«è² æ¥è
ãæ§ç¯ã§ãããã€ãã®é·ãïŒããã³ $ã€ã³ã©ã€ã³$ PPp_ {j} $ã€ã³ã©ã€ã³$ ïŒãã®ãã€ãã®äŸ¡æ ŒïŒãjãä»ããã€ã³ããã¯ã¹ã 黿ã®åå è
ã¯ã1çš®é¡ã®ãã€ãã2å䜿çšã§ãããã©ãããäœåºŠãå°ããŸããã ããããšä»®å®ãããäžèšã®äŸã¯ãããæç¢ºã«ç€ºããŠããŸãã ãã®ã¿ã¹ã¯ã®æ¡ä»¶ã«ãããåãå
¥ããŸã $ã€ã³ã©ã€ã³$ D_ {i} = {0ã1} $ã€ã³ã©ã€ã³$ ïŒãã£ãŒã«ããéžæãããã©ããïŒããã³ $ã€ã³ã©ã€ã³$ PP_ {j} = {0ã1} $ã€ã³ã©ã€ã³$ ïŒè«è² æ¥è
ãéžæãããã©ããïŒãç·åœ¢ããã°ã©ãã³ã°ã¿ã¹ã¯ãäœæã§ããŸãã
$ inline $ \ sum \ limits_ {i} D_ {i} * Dv_ {i} \ rightarrow max \\ \ sum \ limits_ {i} D_ {i} * Ds_ {i} + \ sum \ limits_ {j} PP_ { j} * PPp_ {j} \ leq k \\ \ sum \ limits_ {i} D_ {i} * Dd_ {i} \ leq \ sum \ limits_ {j} PP_ {j} * PPl_ {j} \\ D_ { i} = {0ã1}ãPP_ {j} = {0ã1} $ã€ã³ã©ã€ã³$
ããšãã°ãã·ã³ãã¬ãã¯ã¹æ³ã«ãã£ãŠè§£æ±ºã§ããŸãã ãã ããã¿ã¹ã¯ã®æ¡ä»¶ã«ãããæå€§çç£éïŒã€ãŸããç®ç颿°ã®å€ïŒã®ã¿ãè¿ãå¿
èŠããããã©ã®ãã£ãŒã«ããšã©ã®è«è² æ¥è
ãéžæãããã瀺ãå¿
èŠã¯ãããŸããã æ¡ä»¶ã®å¶éãšãšãã«ãããŒãã«dp [length] [money]ãæ§ç¯ããããšã«ãããåçããã°ã©ãã³ã°ã«ãã£ãŠåé¡ã解決ã§ããŸããããã§ãlengthã¯ãã€ãã©ã€ã³ã®é·ããmoneyã¯moneyã§ãã ããŒãã«ãæ£ããæ§ç¯ãããããã®äžã®æå€§å€ãèŠã€ããã ãã§ååã§ãããããçãã§ãã ã¿ã¹ã¯ã®ã¡ã¢ãªå¶çŽã¯æ§ç¯ããã®ã«ååã§ãã
ãã¿ã¯ãŒãšAIãã®ã¿ã¹ã¯
å
¥ã | ãããã« | å¶éæé | ã¡ã¢ãªå¶é |
---|
æšæºå
¥åãŸãã¯input.txt | æšæºåºåãŸãã¯output.txt | 1ç§ | 64ã¡ã¬ãã€ã |
Artemã¯ãæµå¯Ÿçãªã¢ãã€ã«ã²ãŒã ããã¬ã€ãã人工ç¥èœãéçºããŠããŸãã ã²ãŒã ã®ã«ãŒã«ã¯ç°¡åã§ãã
ãã¬ãŒã€ãŒã®åã«ã¯ãé«ããc 1 ... c i ... c nã®ã¿ã¯ãŒãn åãããŸãã ãã®ã¿ãŒã³ã§ããã¬ã€ã€ãŒã¯ããã€ãã®å°ããªå¡ãåŸãããããã«å¡ã®äžã€ãå£ãããšãã§ããŸãã ãã¬ã€ã€ãŒã¯ã¿ã¯ãŒã§æ··ä¹±ããããšãæããŠãããããå¶éã«åæããŸãããåé¢åŸãåãé«ãã®2ã€ã®ã¿ã¯ãŒãååŸããªãã§ãã ããã ããšãã°ãé«ã7ã®ã¿ã¯ãŒã¯ïŒ1ã2ã4ïŒã«åå²ã§ããŸãããïŒ1ã3ã3ïŒã«ã¯åå²ã§ããŸããã é«ãã¯åžžã«æŽæ°ã§ãã
ç Žå£ã§ããå¡ããªã人ã倱ããŸãã
ã¢ã«ãã ã«ã¯æé©ãªãã¬ã€ãããéââåžžã«è³¢ãå人ãããŸããã¢ã«ãã ã®äººå·¥ç¥èœãšæŠãã®ã¯åœŒã§ãã AIã®åäœãè©äŸ¡ããã«ã¯ãArtyomã¯ãäž¡æ¹ã®ãã¬ã€ã€ãŒãæé©ã«è¡åããå Žåã«ãããããåã€ã¹ããã©ãããç¥ãå¿
èŠããããŸãã ããã§åœŒãå©ããŠãã ããã
人éã¯åžžã«æåã«æ©ããŸãã 圌ã¯AI kã²ãŒã ã§ãã¬ã€ããŸãã
æåã®è¡ã«ã¯ãæŽæ°k <500ãå«ãŸããŠããŸãã
ããã«2è¡ã®kãããã¯ãç¶ããŸãã
åãããã¯ã®æåã®è¡ã¯ãæŽæ°0 <nâ€50ã§ãã
åãããã¯ã®2è¡ç®ã«ã¯ã0 <c iâ€50ã®nåã®æŽæ°ããããŸããæ°åã¯ã¹ããŒã¹ã§åºåãããŠããŸãã
kè¡ãåè¡ã«ã¯ããã®äººãã²ãŒã ã«åã£ããã©ããã«å¿ããŠãtrueãŸãã¯falseãå«ãŸããŸãã
äŸ
å
¥ã | ãããã« |
2
1
4
2
1 1 | åœ
åœ |
è§£æ
ææ¡ãããŠããã¿ã¯ãŒã²ãŒã ã¯ã2人ã®ãã¬ã€ã€ãŒãæãããšãã§ããªããå
¬å¹³ãªæçµã²ãŒã ã§ãã
ãããã£ãŠãã²ãŒã å
ã®ç¹å®ã®ãã¬ãŒã€ãŒã®åå©ã¯ãã²ãŒã ã®ç¶æ
ãš2人ã®ãã¬ãŒã€ãŒã®åãã®é åºã«ãã£ãŠæ±ºãŸããŸãã ã²ãŒã çè«ã«ç²ŸéããŠããèªè
ã«ãšã£ãŠã¯ã2人ã®ãã¬ãŒã€ãŒã®åçã®ã²ãŒã ã®ãããããå®éã«ã圌ãã®ã²ãŒã ãšåçã§ããããšã¯æããã§ãã
ããã«ã²ãŒã ã®ç°¡åãªèª¬æããããŸãïŒãœãŒã¹ãžã®ãªã³ã¯ -詳现ãªã¬ãã¥ãŒã®ããã«ãããã¯ãªãã¯ããŠãã ããïŒïŒ
ããã€ãã®ããŒãããããããããã«ããã€ãã®ç³ããããŸãã 1åã®åãã§ããã¬ãŒã€ãŒã¯ä»»æã®1ã€ã®å±±ãããŒã以å€ã®æ°ã®ç³ãåããããããæšãŠãããšãã§ããŸãã ãããã£ãŠãæå€±ã¯ãã以äžã®åãããªãå Žåã«çºçããŸãã ãã¹ãŠã®å±±ã¯ç©ºã§ãã
ãããã£ãŠãã²ãŒã ã圌ãã®ç¶æ
ã¯ãèªç¶æ°ã®é åºä»ããããŠããªãã»ããã«ãã£ãŠäžæã«èšè¿°ãããŸãã 1åã®ç§»åã§ãä»»æã®æ°å€ãå³å¯ã«æžããããšãã§ããŸãïŒçµæãšããŠæ°å€ããŒãã«ãªãå Žåããã®æ°å€ã¯ã»ããããåé€ãããŸãïŒã
nimã²ãŒã ã®è§£æ±ºçã¯ãããŒãã®ãµã€ãºããxoråèšãèŠã€ããããšã§ãããã®åèšããŒã以å€ã®å Žåã«ã®ã¿ãåã¡ç¶æ
ã«ãããšæç¢ºã«è¿°ã¹ãããšãã§ããŸãã
ããã«ãSprag-Grandiã®å®çã¯ã2人ã®ãã¬ãŒã€ãŒã®åçã®ã²ãŒã ã®ç¶æ
Uããµã€ãºXã®å°æ°ã®åœŒã®ã²ãŒã ã«é¢é£ä»ããããšãã§ãããšè¿°ã¹ãŠããŸããããã解決ãã-ãã§ã«ç¥ãããŠããã²ãŒã ã
ã¿ã¹ã¯ãè©äŸ¡è¡šç€ºã
å
¥ã | ãããã« | å¶éæé | ã¡ã¢ãªå¶é |
---|
æšæºå
¥åãŸãã¯input.txt | æšæºåºåãŸãã¯output.txt | 1ç§ | 64ã¡ã¬ãã€ã |
Galyaã¯ã¬ãã¥ãŒã¢ã°ãªã²ãŒã¿ãŒãéçºããŠããŸãã 圌女ã¯ã7ã€æã®æã®å©ããåããŠæ©é¢ã®æ Œä»ããæå®ããããšã«ããŸããã
å
¥åã¬ã³ããªã³ã°ã·ã¹ãã ã¯ãé«ãhãšå¹
wã®é·æ¹åœ¢ãåãåãããã®å·Šäžé
ã¯ç¹ïŒxãyïŒã«ãããŸãã æ¬¡ã®èŠåã«åŸã£ãŠæãæç»ããå¿
èŠããããŸãã
- æã®ãµã€ãºã¯ãé·æ¹åœ¢ã®å¹
ãŸãã¯é«ããã€ãŸãå°ããæ¹ã«ãã£ãŠæ±ºãŸããŸãã ïŒå³é¢ãåç
§ããŠãã ãããïŒ
- é·æ¹åœ¢ã®å¯žæ³ã®1ã€ãæã®å¯Ÿå¿ãã寞æ³ããã倧ããå Žåãæã¯ãã®å¯žæ³ã®äžå€®ã«é
眮ããå¿
èŠããããŸãã
- æã¯äžåãã§ãã
ã¬ã³ããªã³ã°ã·ã¹ãã ã¯ãGaliã³ãŒãããæã®é ç¹ã®åº§æšãäºæž¬ããŸãã ã²ã€ã«ãããããèšç®ããã®ãå©ããŠãã ããã
ã¬ãªã¢ã¯ãäžè§åœ¢ã®æãäœæããããã«ãéåžžã®äžè§åœ¢ã®é ç¹ã1ã€ã«ã€ãªãã§åŸãããå³ã®å€åŽã®èŒªéãåããŸãã 座æšç³»ã§ã¯ãX軞ã¯å·Šããå³ã«ãY軞ã¯äžããäžã«åããããŠããŸãã Galiã®ããã°ã©ã ã¯ã¯ã©ãã·ã¥ãããå
¥åãšããŠäžé©åãªå¹
ãšé«ãã®å€ãåãåããŸãã
åäžè¡ã«ã¯ãã¹ããŒã¹ã§åºåãããæŽæ°xãyãwãããã³hãå«ãŸããŸãã
äŸïŒãšã³ããª150 0 50 100ã¯ãå¹
ã50ãã€ã³ããé«ãã100ãã€ã³ããå·Šäžé
ããã€ã³ãïŒ150ã0ïŒã®é·æ¹åœ¢ã瀺ããŸãã
ã¹ããŒã¹ã§åºåããã28åã®æ°åãå«ãå¯äžã®è¡ã¯ãæã®é ç¹ã®åº§æšã§ãäžããå§ãŸãæèšåãã§ãã æ°å€ã¯æãè¿ãæŽæ°ã«äžžããå¿
èŠããããŸãã 解決çãé²ããåã«ãåºåäŸãšåé¡ã®å³ãåç
§ããŠãã ããã
äŸïŒ3ã€ã®ãã€ã³ãïŒ1ã2ïŒãïŒ3ã4ïŒãïŒ5ã6ïŒã®åºåã¯æ¬¡ã®ããã«ãªããŸãïŒ1 2 3 4 5 6ã
äŸ
å
¥ã | ãããã« |
0 0 100 100 | 50 1 65 21 90 21 85 45100 64 78 75 72 99 50 88 28 99 22 75 0 64 15 45 10 21 35 21 |
泚é

- äºæ³ãããé ç¹ã®é åºïŒ

å
æ¥æã®äŸïŒ

è§£æ
ãã®åé¡ã®è§£æ±ºçã¯ã3ã€ã®æ®µéã«çž®å°ãããŸãã空éå
ã§ç®çã®æ¹åãæã€åºæºæãäœæããçµæã®ãã€ã³ããã¹ã±ãŒãªã³ã°ãããªãã»ãããèšç®ããŠé©çšããŸãã
ã¹ã¿ãŒãã«
æãç°¡åãªæ¹æ³ã¯ãåç¹ãäžå¿ãšããåäœååŸã®åã«å
æ¥ããæãäœæããããšã§ãã å€éšé ç¹ã®ãã€ã³ãã¯ãèªæãªäžè§æ³ã䜿çšããŠèšç®ãããŸãããå
éšé ç¹ã§ã¯ãã¿ã¹ã¯ã¯ããå°ãè€éã§ãã ãããã¯ãå°ãªããšã2ã€ã®æ¹æ³ã§èŠã€ããããšãã§ããŸãã ããç°¡åãªæ¹æ³ã¯ãå€åŽã®é ç¹ãæ¥ç¶ããã»ã°ã¡ã³ãã®äº€ç¹ãèŠã€ããããšã§ãã ããè€éãªã®ã¯ã倿¥åã®ååŸããå
æ¥åã®ååŸãèšç®ããåŒãèŠã€ããããšã§ãã æåã«ãããè¡ãã®ãæãç°¡åã§ããããšãã°ã5ã®å°ã£ãæã®å Žåãæ¥ç¶ãããé ç¹éã«ä»»æã®ã®ã£ãããããNã®å°ã£ãæã«äžè¬åããŸãã
ã¹ã±ãŒãªã³ã°
ãã¹ãŠã®å Žåã«ãããŠãæãåããã®ã«å¿
èŠãªãµã€ãºãäžããããŸãã ãããã£ãŠã巊端ããå³ç«¯ãŸã§ã®è·é¢ãæå®ãããå¹
ãè¶
ãããæé«ããæäœãŸã§ã®è·é¢ãæå®ãããé«ããè¶
ããªãããã«ãååŸãããã€ã³ããã¹ã±ãŒãªã³ã°ããå¿
èŠããããŸãã ã¹ã±ãŒãªã³ã°ä¿æ°ã䜿çšããŠãå¹
ãšé«ããç®çã®å€ã«ããå°ããæ¹ãéžæããŸãã äžå¿ãåç¹ã«ããåºæºæãæ
éã«äœæãããããåãã€ã³ãã®åº§æšã«éžæããä¿æ°ãæããã ãã§ååã§ãã
ãªãã»ãã
æåŸã«æ®ã£ãŠããã®ã¯ãæãæå®ããããã¬ãŒã å
ã«åãŸãããã«ãã€ã³ããç§»åããããšã§ãã ãã¹ãŠã®ãªãã·ã§ã³ã®å
¥åããŒã¿ã¯ãå·Šäžé
ã®ç¹å®ã®åº§æšãæã€å¢çããã¯ã¹ã«çž®å°ã§ããŸãã ããã§ã¯ãã¹ãŠãç°¡åã§ããæåŸã®æ®µéã§åŸãããçµæããæé«ç¹ãååŸãããã®y座æšãšå·Šäžé
ã®y座æšã®å·®ãèæ
®ãããã¹ãŠã®ç¹ãååŸããå€ã ãåçŽã«ã·ããããŸãã X座æšã§ãåãããšãè¡ããŸããäžçªäžã®ç¹ã§ã¯ãªããäžçªå·Šã®ç¹ãåããŸãã æåŸã«ãã1ã€ãæããã®é·æ¹åœ¢ã®äžå€®ã«é
眮ããŸãã
ãããªãã¢ã¯ã·ã§ã³ã¯ãåã®æ®µéã§éžæããä¿æ°ã«ãã£ãŠç°ãªããŸãã
- é«ããã¹ã±ãŒãªã³ã°ããå Žå-é·æ¹åœ¢ã®å¹
ãšå·Šããå³ç«¯ãŸã§ã®è·é¢ã®å·®ãåããŸãã
- å¹
ãã¹ã±ãŒãªã³ã°ãããŠããå Žå-é·æ¹åœ¢ã®é«ããšæé«ç¹ããæäœç¹ãŸã§ã®è·é¢ã®å·®ãåããŸãã
åŸãããå€ã2ã§é€ç®ãã察å¿ããæž¬å®å€ã«åŸã£ãŠãã€ã³ããã·ããããŸãã åçãåãåããŸããã
ã¿ã¹ã¯ãåã®å転ãšã¹ã±ãŒãªã³ã°ã
å
¥ã | ãããã« | å¶éæé | ã¡ã¢ãªå¶é |
---|
æšæºå
¥åãŸãã¯input.txt | æšæºåºåãŸãã¯output.txt | 1ç§ | 64ã¡ã¬ãã€ã |
Vikaã¯ãã¹ããŒããã©ã³ãšã¿ãã¬ããçšã®ã°ã©ãã£ãã¯ãšãã£ã¿ãŒãéçºããŠããŸãã 圌女ã¯ã次ã®ããã«ããŠãŒã¶ãŒã«2æ¬ã®æã§ç»é¢äžã®åãå転ããããµã€ãºã倿Žããæ©äŒãäžããããšèããŠããŸãã

å³ã¯ãæãæ¥ç¶ããã»ã°ã¡ã³ããå転ããã®ãšåãè§åºŠã§å転ããŸãã å³ã®ãµã€ãºã¯ãã»ã°ã¡ã³ãã®é·ãã«æ¯äŸããŠå€åããŸãã æåã«ãFigureãå転ããæ¬¡ã«ãã®ãµã€ãºã倿ŽãããŸãã æåãåã«ã¯åº§æšïŒxãyïŒãšååŸrããããŸãã ãŠãŒã¶ãŒã®ãžã§ã¹ãã£ãŒã説æããã¿ããã€ãã³ãã®ãªã¹ãã衚瀺ãããŸãã Vikaãåã®äžå¿ãšãã®ååŸã®æçµåº§æšãèšç®ããã®ãå©ããŸãã åã¯ãç¹ïŒaãbïŒã«å¯ŸããŠå転ããŸãã
ã¿ããã€ãã³ãã®èª¬æã«ã¯ãæã®IDã座æšãã€ãã³ãã®ã¿ã€ããå«ãŸããŸãã ãŠãŒã¶ãŒãã¢ã¿ããããæåã®æã¯id 0ã2çªç®ã®æã¯id 1ãªã©ãåãåããŸãã
äŸïŒ
0 337 490 ACTION_DOWN-ããã¯ããã€ã³ã0ïŒ337ã490ïŒã§ACTION_DOWNã€ãã³ããçºçããããšãæå³ããŸãã
ã¿ããã€ãã³ãã«ã¯æ¬¡ã®çš®é¡ããããŸãã
- ACTION_DOWN-ãŠãŒã¶ãŒã¯ãæå®ããããã€ã³ãã§ç»é¢ã«æåã®æãåœãŠãŸããã
- ACTION_POINTER_DOWN-ãŠãŒã¶ãŒãç¹å®ã®ãã€ã³ãã§2æ¬ç®ã®æãç»é¢ã«é©çšããŸããã
- ACTION_MOVE-ãŠãŒã¶ãŒã¯æãæå®ããããã€ã³ãã«ç§»åããŸããã
- ACTION_POINTER_UP-ãŠãŒã¶ãŒã¯ã2çªç®ã®æãæå®ããããã€ã³ãã«ç§»åããŠãªãªãŒã¹ããŸããã
- ACTION_UP-ãŠãŒã¶ãŒã¯æåã®æãç¹å®ã®ãã€ã³ãã«ç§»åããŠé¢ããŸããã
- ACTION_CANCEL-ãŠãŒã¶ãŒããžã§ã¹ãã£ãŒãäžæ¢ããŸããã
æåã®è¡ã«ã¯ãã¹ããŒã¹ã§åºåãããæ°åxãyãããã³rãå«ãŸããŠããŸãã 2è¡ç®ã«ã¯ãã¹ããŒã¹ã§åºåãããæ°åaãšbãå«ãŸããŠããŸãã æ¬¡ã®æ°è¡ã«ã¯ãé£ç¶ããã¿ããã€ãã³ããå«ãŸããŠããŸãã
座æšãšååŸãæã€å¯äžã®ç·ã æ°åã¯ã¹ããŒã¹ã§åºåãããŸãã
äŸ
å
¥ã | ãããã« |
252 194 78
445,559
0 337,490 ACTION_DOWN
1,599,490 ACTION_POINTER_DOWN
1,576,564 ACTION_MOVE
1,552,590 ACTION_MOVE
0 407,375 ACTION_MOVE
1 505 615 ACTION_MOVE
1 482 620 ACTION_MOVE
0 477 360 ACTION_MOVE
1,435,616 ACTION_MOVE
1,411,607 ACTION_MOVE
0 547 386 ACTION_MOVE
1 364 548 ACTION_POINTER_UP
0 571 387 ACTION_UP | 831 704 73 |
泚é
çµæã衚瀺ãããšãã¯ãæ°åŠçãªäžžãã®èŠåã«åŸã£ãŠããã¹ãŠã®æµ®åå°æ°ç¹å€ãæŽæ°å€ã«äžžããå¿
èŠããããŸãã
è§£æ
ãžã§ã¹ãã£ã¯è€éã«æããŸãããå転ãšã¹ã±ãŒãªã³ã°ã®2ã€ã®ã³ã³ããŒãã³ãã«åããããšãã§ããŸãã å³ãå転ãããã«ã¯ãå転è§ãèšç®ããå¿
èŠããããŸããå転è§ã¯æ¬¡ã®åŒã䜿çšããŠååŸã§ããŸãã
a = atan2ïŒprevTouchX2-prevTouchX1ãprevTouchY2-prevTouchY1ïŒ-atan2ïŒcurrentTouchX2-currentTouchX1ãcurrentTouchY2-currentTouchY1ïŒã
å転è§åºŠãåãåã£ããããã£ã®ã¥ã¢èªäœãå転ãããå¿
èŠããããŸããããã«ããããã£ã®ã¥ã¢ã®åãã€ã³ããå転è§åºŠã ãå転ãããããšã«ãªããŸãã å³ãå転ãããåŸããããæ¡å€§çž®å°ããå¿
èŠããããŸãã å³ã®ã¹ã±ãŒãªã³ã°ã¯éåžžã«ç°¡åã§ãã 2æ¬ç®ã®æã®ACTION_POINTER_DOWNã€ãã³ããåä¿¡ãããšãã¯ã1æ¬ç®ãš2æ¬ç®ã®æã®éã®è·é¢ãèŠããŠããå¿
èŠããããŸãããã®åŸãæåã®2æ¬ã®æã®éã®è·é¢ã远跡ããããšã§ãå³ãã¹ã±ãŒãªã³ã°ããããã«å¿
èŠãªä¿æ°ãèšç®ã§ããŸãã
ã¿ã¹ã¯ãé路建èšã
å
¥ã | ãããã« | å¶éæé | ã¡ã¢ãªå¶é |
---|
æšæºå
¥åãŸãã¯input.txt | æšæºåºåãŸãã¯output.txt | 1ç§ | 64ã¡ã¬ãã€ã |
ã¢ãã€ã«ã²ãŒã ã§ã¯ã䞻人å
¬ã¯é ãã®ææã«åºç€ãæ§ç¯ããŸãã 圌ã¯åšå²ããå§ãŸããŸã-çŽæ¥ã¬ãŒã¶ãŒå£ã§æ¥ç¶ãããå¡ã æ¬ç€Ÿã®å»ºç¯å®¶ã¯ã座æšïŒx 1 ãy 1 ïŒ...ïŒx i ãy i ïŒ...ïŒx n ãy n ïŒãæã€nå¡ã瀺ãèšç»ã圌ã«éä¿¡ããŸãã åºå°é²è¡ã®èгç¹ããã¯ã3æ¬ä»¥äžã®é£æ¥ããå¡ã1æ¬ã®çŽç·äžã«çœ®ãããšã¯æå³ããããŸããã ãã ããã¹ã¿ããã¢ãŒããã¯ãã¯ãã®ããã«ã¿ã¯ãŒãé
眮ããããšãããããããã¬ã€ã€ãŒèªèº«ãäœåãªäžéã¿ã¯ãŒãåé€ããå¿
èŠããããŸãã
å¢çç·ã䜿ãçµãããšãããŒããŒã¯ããŒã¹ãå
åŽããè£
åãå§ããŸãã 圌ã¯ã¿ã¯ãŒéã«kæ¬ã®éè·¯ã建èšããããšèããŠããŸããéè·¯ã¯ã飿¥ããŠããªã2ã€ã®ã¿ã¯ãŒãæ¥ç¶ã§ããŸãããå¥ã®éè·¯ãå£ã暪åãããšã¯ã§ããŸããã 1ã€ã®å¡ããã¯ã奜ããªã ãéè·¯ãåºãããšãã§ããŸãã
䞻人å
¬ã¯påã®éè·¯ãããããæã£ãŠããŸãã æé©ãªé路建èšèšç»ãéžæããããã«ãããŒããŒã¯å¯èœãªãã¹ãŠã®ãªãã·ã§ã³ãäžŠã¹æ¿ããããæç€ºããŸãã ããããã¯åæã«äœåºŠãäœåºŠãåäœãéå§ããåæã«éè·¯ã®äœçœ®ã«ç¬èªã®ãªãã·ã§ã³ããããããŸãã æ¬¡ã®å埩ã®åã«ããããããããæ®ãã®ãªãã·ã§ã³ãå°ãªãããšã倿ããå Žåãäœåãªããããã¯è§£æŸãããå€é£ã調çããããã«ãããã³ã«éãããŸãã æ®ãã®ããããã¯æåŸã®ãªãã·ã§ã³ãçµäºãã黿ºãåããŸãã
åºå°ã®å€ã®éè·¯ãèè£
ã§ããããšã倿ããå ŽåãããŒããŒã¯åºå°ãå®å
šã§ãªããšå®£èšããææããé£ã³å»ããŸãã
ãããã³ã§äœå°ã®ãããããåäœããŸããïŒ
æåã®è¡ã«ã¯ã3ã€ã®æŽæ°4â€nâ€10 7ã1â€kâ€nãããã³çŽ æ°105 <p <11Ã104ãå«ãŸããŸããæ°åã¯ã¹ããŒã¹ã§åºåãããŸãã
次ã®nè¡ã«ã¯ã0 <x i ãy i <109ã®2ã€ã®æŽæ°ãå«ãŸããŠããŸããæ°åã¯ã¹ããŒã¹ã§åºåãããŠããŸãã
çããããå¯äžã®è¡ã ããŒã¹ãå®å
šã§ãªãå Žåã-1ãå°å·ããŸãã
äŸ1
å
¥ã | ãããã« |
4 1 101363
0 0
1 0
1 1
0 1 | 101361 |
å¯äžã®éè·¯ãèè£
ããæ¹æ³ã¯2ã€ãããŸãïŒïŒ0ã0ïŒ-ïŒ1ã1ïŒããã³ïŒ1ã0ïŒ-ïŒ0ã1ïŒã 2ã€ã®ããããããããã«åŸäºããæ®ãã¯ãããã³ã«è¡ããŸãïŒp-2 = 101 361ã
äŸ2
å
¥ã | ãããã« |
4 1 101363
1 0
2 0
0 1
1 2 | -1 |
ããã§ã¯ãïŒ1ã0ïŒ-ïŒ0ã1ïŒã®éã®éè·¯ãæ§ç¯ã§ããŸãããããã¯ããŒã¹ã®å€åŽã«ãããŸãã 䞻人å
¬ã¯åºå°ãå®å
šã§ãªããšèªèããçãã¯-1ã§ãã
äŸ3
å
¥ã | ãããã« |
4 1 101363
0 0
1 0
2 0
0 1 | 101363 |
å¡ïŒ0ã0ïŒãïŒ1ã0ïŒãããã³ïŒ2ã0ïŒã¯åãç·äžã«ãããããããŒããŒã¯äžå€®ã®å¡ïŒ1ã0ïŒã建èšããŸããã éè·¯ãèè£
ããããšã¯ã§ããªãããããã¹ãŠã®ããããã¯ããã«ãããã³ã«è¡ããŸãïŒp = 101 363ã
è§£æ
åé¡ã®è§£æ±ºçã3ã€ã®ã¹ãããã«åããŸãã
æåã®ã¹ãããã¯ãå
¥åé ç¹ããŒã¿ã»ããã«ã€ããŠãå€è§åœ¢ãåžé¢ãã©ããããããããªããå®éã®é ç¹ã®æ°ã決å®ããããšã§ãã ãã¹ãŠã®é ç¹ããšããžããµããŒãããã©ã€ã³ã®çåŽã«ããå ŽåãããªãŽã³ã¯åžåã§ãã 飿¥ããé ç¹ã®åããªãã«ã«ã€ã㊠$ã€ã³ã©ã€ã³$ïŒx_ {i-1}ãy_ {i-1}ïŒãïŒx_ {i}ãy_ {i}ïŒãïŒx_ {i + 1}ãy_ {i + 1}ïŒ$ inline $ ããã€ãã®ãã¯ãã«ãæ§ç¯ãã $ã€ã³ã©ã€ã³$ ab =ïŒïŒx_ {i-1}ãy_ {i-1}ïŒãïŒx_ {i}ãy_ {i}ïŒïŒããã³bc =ïŒïŒx_ {i}ãy_ {i}ïŒã ïŒx_ {i + 1}ãy_ {i + 1}ïŒïŒ$ã€ã³ã©ã€ã³$ ãããã³åŒab.x bc.y-bc.x ab.yã®ç¬Šå·ãèšç®ããŸãã åŒã0ã®å Žåãé ç¹ã¯1ã€ã®çŽç·äžã«ãããåé¡ã®ç¶æ
ã«å¿ããŠãäžå€®ã®é ç¹ã«ããã¿ã¯ãŒãæ¶ããã¿ã¯ãŒã®ç·æ°ãæžå°ããŸãã ãã¹ãŠã®é ç¹ã®ããªãã«ã§ç©ç¬Šå·ã0ãŸãã¯åžžã«åãã§ããå Žåã2çªç®ã®ã¹ãããã«é²ã¿ãŸããããã§ãªãå Žåã¯ãããŒã¹ãå®å
šã§ãªããšèŠãªããçã-1ãåºåããŸãã
2çªç®ã®ã¹ãããã åžNè§ã®å
éšã«kåã®äºãã«çŽ ãªå¯Ÿè§ç·ãæ§ç¯ããæ¹æ³ã®æ°ã¯ $ inline $ V = 1 /ïŒk + 1ïŒ{N-3 \ choose k} {N + k-1 \ choose k} $ inline $ ãããããåŒp-V mod pãèšç®ããå¿
èŠããããŸããããã§ãpã¯çŽ æ°ã§ãã
Nãæ³åããŠãã ããïŒ ã©ããã£ãŠ $ã€ã³ã©ã€ã³$ a * p ^ e $ã€ã³ã©ã€ã³$ ããã§ãæå€§å
¬çŽæ°ã¯aã§ãããp gcdïŒaãpïŒ= 1ã§ãã
$ inline $ {n \ choose r} =ïŒnïŒïŒ/ïŒrïŒïŒnrïŒïŒïŒ= a_ {1} * p ^ {e_ {1}} / a_ {2} * p ^ {e_ {2} } * a_ {3} * p ^ {e_ {3}} =ïŒa_ {1} / a_ {2} * a_ {3}ïŒ* p ^ {e_ {1} -e_ {2} -e_ {3} } $ã€ã³ã©ã€ã³$
ãã $ã€ã³ã©ã€ã³$ e_ {1} -e_ {2} -e_ {3}> 0 $ã€ã³ã©ã€ã³$ ãåŒã¯pã§å®å
šã«å²ãåããåé¡ã®çãã¯æ°pã§ãã
ã±ãŒã¹çš $ã€ã³ã©ã€ã³$ e_ {1} -e_ {2} -e_ {3}> 0 $ã€ã³ã©ã€ã³$ = 0çã㯠$ã€ã³ã©ã€ã³$ a_ {1} / a_ {2} * a_ {3} $ã€ã³ã©ã€ã³$ mod pã
èšç®ã§ã¯ã a b mod p =ïŒa mod pïŒ ïŒb mod pïŒmod pãããã³ $ã€ã³ã©ã€ã³$ k ^ {-1} $ã€ã³ã©ã€ã³$ mod p = $ã€ã³ã©ã€ã³$ïŒkïŒ^ {p-2} $ã€ã³ã©ã€ã³$ çŽ æ°pã®mod pã
第äžã®ã¹ãããã åŒãèšç®ããã«ã¯ $ã€ã³ã©ã€ã³$ e_ {1} -e_ {2} -e_ {3} $ inline $ æ³åããŠã¿ãŠïŒ as 1 2 ... p ïŒp + 1ïŒ ... 2p ïŒ2p + 1ïŒ ...ãwhileïŒp + 1ïŒ ... ïŒ2p-1ïŒmod p = 1 2 ...ïŒp-1 ïŒ=ïŒp-1ïŒïŒ..åèšãn mod p =ïŒ $ inline $ïŒp-1ïŒïŒ^ k $ inline $ k ïŒn mod pïŒïŒïŒmod pãk = floorïŒn / pïŒã
ã¿ã¹ã¯ãSuper Simple Schedulerã
å
¥ã | ãããã« | å¶éæé | ã¡ã¢ãªå¶é |
---|
æšæºå
¥åãŸãã¯input.txt | æšæºåºåãŸãã¯output.txt | 10ç§ | 224ã¡ã¬ãã€ã |
ã¹ããŒããã©ã³ã®ããã»ããµã§å®è¡ããã¿ã¹ã¯ã¯nåãããŸãã ãããã®å®è£
ã«ã¯æéåäœt 1 ... t i ... t nãå¿
èŠã§ããã içªç®ã®æéåäœã®éå§ãŸã§ã«içªç®ã®ã¿ã¹ã¯ãå®äºããå¿
èŠããããŸãã
éã«åãããã«ãã¿ã¹ã¯ã¯è€æ°ã®ã¹ã¬ããã§å®è¡ã§ããŸãããæ°ããã¹ã¬ããããšã«ããããªãŒã®è² è·ãå¢å ããŸãã æåã®ã¹ããªãŒã ã§ã¯ãåäœæéãããã®ãšãã«ã®ãŒåäœãæ¶è²»ããã2çªç®ã®1.5åäœã§ã¯ãšãã«ã®ãŒãæ¶è²»ããã3çªç®ã§ã¯1.5ç§åäœã§ãšãã«ã®ãŒãæ¶è²»ãããŸãã
ã¿ã¹ã¯ã¯æéåäœã«åå²ã§ããŸããæåã«éšåçã«å®äºããæ¬¡ã«å¥ã®ã¿ã¹ã¯ã«ç§»åããŠãããæåã®ã¿ã¹ã¯ã«æ»ããŸãã ç°ãªãã¹ã¬ããã§ã¿ã¹ã¯ã®ç°ãªãéšåãåæã«å®è¡ããããšã¯äžå¯èœã§ãã
ã¹ã±ãžã¥ãŒã©ã¯äžåºŠã«1ã€ã®ã¿ã¹ã¯ãåãåããŸãã ã¿ã¹ã¯ãåä¿¡ãããšã圌ã¯ããã«ãã®ã¿ã¹ã¯ã«ã¿ã€ã ã¹ããããå²ãåœãŠãŸãã ã¿ã¹ã¯ãé
åžãããåŸãã¹ã±ãžã¥ãŒã©ã¯ãããä»ã®ã¹ãããã«è»¢éã§ããŸããã
ãã¹ãŠã®ã¿ã¹ã¯ãæé©ã«åæ£ãããŠããå Žåããã¹ãŠã®ã¿ã¹ã¯ãå®äºããã«ã¯ã©ã®ãããã®ãšãã«ã®ãŒãå¿
èŠã§ããïŒ
æåã®è¡ã«ã¯ãæŽæ°1 <nâ€3Ã10 3ãå«ãŸããŠããŸãã
次ã®nè¡ã«ã¯ã0â€t iâ€10 4ããã³0â€d iâ€10 4ã® 2ã€ã®æŽæ°ãå«ãŸããŠããŸãã æ°åã¯ã¹ããŒã¹ã§åºåãããŸãã
çããããå¯äžã®è¡ã 粟床-å°æ°ç¹ä»¥äž8æ¡ã
äŸ
å
¥ã | ãããã« |
5
2 2
1 1
3 4
1 10
1 2 | 10.25000000 |
è§£æ
åé¡ã®ç¶æ³ã«å¿ããŠãæ¶è²»ããããšãã«ã®ãŒéã®ã¿ãèšç®ããã°ååãªã®ã§ãæéåäœããšã«æ¶è²»ããããšãã«ã®ãŒéãèšç®ããããšã«ãããè§£æ³ã䜿çšã§ããŸãã ã¿ã¹ã¯ãèšç»ãããšããæ¶è²»ããããšãã«ã®ãŒã®æå°å€k = 1ãåããã¿ã¹ã¯ã®æéããéå§ããŠãæéééã®ãã¹ãŠã®ã¹ãããããœãŒãããŸãã
ã¹ãããã®ãšãã«ã®ãŒæ¶è²»ãä¿æ°ïŒkïŒããå°ãããã¿ã¹ã¯ãèšç»ãããšãã«ãã®ã¿ã€ã ã¹ãããã䜿çšãããªãã£ãå Žåããã®ã¹ããããå æããŠãã¹ãããã®ä¿æ°ãKå¢ãããŠã¿ã¹ã¯ãå®äºããŸããæéã®éå§ã«éãããšãä¿æ°kã1.5åå¢ããæéããã¿ã¹ã¯ãå®å
šã«èšç»ããããŸã§ãã¿ã€ã ã¹ãããã®æ€çŽ¢ãç¹°ãè¿ããŸãã ãã¹ãŠã®ã¿ã¹ã¯ã®èšç»ãå®äºãããšãååŸããåæéåäœã®ä¿æ°ãå ç®ããŠç·ãšãã«ã®ãŒæ¶è²»éãèšç®ããã ãã§ãã
ç Žå£å¯èœãªãªããžã§ã¯ãã®ã¿ã¹ã¯
å
¥ã | ãããã« | å¶éæé | ã¡ã¢ãªå¶é |
---|
æšæºå
¥åãŸãã¯input.txt | æšæºåºåãŸãã¯output.txt | 2ç§ | 64ã¡ã¬ãã€ã |
2Dã²ãŒã ã§ã¯ããªããžã§ã¯ããç Žå£ã§ããŸãã ã²ãŒã ã¯éçºæ®µéã«ããããããŸã§ã®ãšããããã¹ãŠãéåžžã«ç°¡åã«è¡ãããŠããŸãïŒç Žå£å¯èœãªãªããžã§ã¯ãã¯ããã€ã³ãïŒx 1 ãy 1 ïŒ...ïŒx i ãy i ïŒ...ïŒx n ãy n ïŒã ã¢ã«ãŽãªãºã ã¯ãæå°æ°ã®å¹é¢é ç¹ãåãããããæãè¿ãé飿¥é ç¹ã«æ¥ç¶ããŸã-ãã®ãããæ¥ç¶ã»ã°ã¡ã³ãã®é·ãã¯æå°ã«ãªããŸãã æ¬¡ã«ãçµæã®ããªãŽã³ã§åãããšãè¡ãããŸãã åžé¢ã®ããªãŽã³ã®ã¿ãæ®ããŸã§ããã¹ãŠãç¹°ãè¿ãããŸãããããã¯ããã¬ã€ã€ãŒãèŠããã©ã°ã¡ã³ãã§ãã
ããšãã°ãé ç¹[0 1 2 3 4]ã®å€è§åœ¢ããããé ç¹1ãå¹ã§é ç¹3ãæãè¿ãå Žåãã¢ã«ãŽãªãºã ã¯é ç¹1ãš3ãæ¥ç¶ããŠãé ç¹[1 2 3]ãš[0 1 3 4]ãæã€å³åœ¢ãååŸããŸãã
ã¢ã«ãŽãªãºã ã¯ãæ¥ç¶ã»ã°ã¡ã³ããæç»ããŠãå®å
šã«ããªãŽã³ã®å
åŽã«é
眮ããŸãã ãªãéã®è§åºŠãçºéããé ç¹ã¯ãåžãšèŠãªãããŸãã è€æ°ã®çè·é¢ã®é ç¹ã«ã»ã°ã¡ã³ããæ§ç¯ããããšãå¯èœã§ããå Žåãã¢ã«ãŽãªãºã ã¯ããå°ããçªå·ã®é ç¹ãéžæããŸãã
ãªããžã§ã¯ããç Žå£ããããã«æ§ç¯ããããã¹ãŠã®ã»ã°ã¡ã³ãã®é·ãã®åèšã¯äœã§ããïŒ
æåã®è¡ã«ã¯ãnâ€500ã®æŽæ°ãå«ãŸããŸããæ¬¡ã®nè¡ã«ã¯ã2ã€ã®æŽæ°xãšyãå«ãŸããŸãã æ°åã¯ã¹ããŒã¹ã§åºåãããŸãã
çããããå¯äžã®è¡ã 粟床-å°æ°ç¹ä»¥äž6æ¡ã
äŸ1
å
¥ã | ãããã« |
4
100 100
200 100
200 200
100 200 | 0.000000 |
äŸ2
å
¥ã | ãããã« |
6
167 84
421 84
283 192
433,298
164,275
320 133 | 326.986753 |
è§£æ
åé¡ã®äž»ãªé£ç¹ã¯ãã»ã°ã¡ã³ããããªãŽã³å
ã®2ã€ã®é ç¹ã®éã«ãããã©ããã倿ããããšã§ãã ãã®åé¡ã解決ããåŸããã¹ãŠã®æ¥ç¶ãªãã·ã§ã³ã培åºçã«æ€çŽ¢ããããšã«ãããåé¡ã®äžèšã®æ¡ä»¶ããæ£é¢ãããæºããããšãã§ããŸããå®è¡æéãšé ç¹ã®æ°ã®å¶éã¯ããªãç·©ããã§ãã ãã€ããŒãã€ã³ãïŒåžç¶ããã³å¹ç¶ã®é ç¹ã®æ±ºå®ãããã³ãã©ããŒã¹ã®æ¹åïŒé ç¹ãæèšåããŸãã¯åæèšåãã«èšå®ãããŠãããã©ããïŒã¯ããã¯ãã«ã®ã¹ãã¥ãŒç©ã䜿çšããŠç°¡åã«è§£æ±ºãããŸãã
åé¡ã¯ãã©ã€ã³ã»ã°ã¡ã³ããããªãŽã³å
ã«ãããã©ããã§ãã å¿
èŠãªæ¡ä»¶ã¯ãã»ã°ã¡ã³ããšããªãŽã³ã®ä»ã®åŽé¢ãšã®äº€å·®ããªãããšã§ãïŒã»ã°ã¡ã³ãã®ç«¯ã§ããé ç¹ã«é£æ¥ããåŽé¢ãé€ãïŒã ãã ãããã®æ¡ä»¶ã§ã¯ååã§ã¯ãããŸããã2ã€ã®é ç¹ãæ¥ç¶ããã»ã°ã¡ã³ããå€åŽã«ãªããåæã«ãã®èŸºãšäº€å·®ããªãå³ãç°¡åã«èŠã€ããããšãã§ããŸãã ãããã£ãŠãå¿
èŠãªæ¡ä»¶ãæºããããŠããå Žåããã®ã»ã°ã¡ã³ãã®ããããã®ãã€ã³ãïŒãšã³ããã€ã³ããé€ãïŒãããªãŽã³å
ã«ãããã©ããã倿ããå¿
èŠããããŸãã ããã¯ãããããå¶å¥èŠåã䜿çšããŠè¡ãããšãã§ããŸãããã®ç¹ããç®ã«èŠããªãå
ç·ãæããå€è§åœ¢ã®èŸºãšã®äº€ç¹ã®æ°ãèšç®ããŸãã 亀差ç¹ã®æ°ã奿°ã®å Žåããã€ã³ãïŒããã³ã»ã°ã¡ã³ãå
šäœïŒã¯ããªãŽã³ã®å
åŽã«ãããããã§ãªãå Žåã¯å€åŽã«ãããŸãã
ãã¡ããããã®ã¿ã¹ã¯ã«ã¯èœãšã穎ããããŸãã解決çãã·ã³ãã«ã§æçœãªå Žåãæçµã©ãŠã³ãã§ã¯æäŸãããŸããã å®è£
äžã«çºçããå¯èœæ§ã®ããåé¡ã¯æ¬¡ã®ãšããã§ãïŒãã¡ããããªã¹ãã¯ç¶è¡ã§ããŸãïŒã
- 飿¥ããé ç¹ã®æ±ºå®ïŒãŒãã€ã³ããã¯ã¹ãééããå ŽåïŒ;
- å¹³è¡ç·ïŒããããã®åŽãåé¡ã®ã»ã°ã¡ã³ããšéšåçãŸãã¯å®å
šã«äžèŽããå Žåã
- äžžã誀差ïŒäžè¬çãªå Žåãæµ®åå°æ°ç¹æ°ã¯ç¹å®ã®å€å
ã§æ¯èŒããå¿
èŠããããŸãããã®å Žåããã¹ãã«åæ Œããã«ã¯10e-5以äžã®å€ã§ååã§ããïŒã
- å¶å¥èŠåãå®è£
ããå Žåãå
ç·ãé ç¹ãééããå Žåã
- ããŒã ãäžéšãééããå Žåãå¥ã®èœãšã穎ããããŸããããŒã ãäžéšãééããåŽé¢éã§180床ã®è§åºŠã§ããããã®åŽé¢ãšäžèŽããå Žåã§ãã
DNAãã£ã¬ã³ãž
å
¥ã | ãããã« | å¶éæé | ã¡ã¢ãªå¶é |
---|
æšæºå
¥åãŸãã¯input.txt | æšæºåºåãŸãã¯output.txt | 8ç§ | 128ã¡ã¬ãã€ã |
Good Corporationã¯ãéºäŒååã«ãã£ãŠäººã
ãå³åº§ã«èå¥ããããã€ã¹ãéçºããŸããã 人ãæã§ç¹å¥ãªã»ã³ãµãŒã«è§Šãããšãããã€ã¹ã¯DNAã®ç¹å®ã®ãã©ã°ã¡ã³ããååŸãããã®ãã©ã°ã¡ã³ãã®ããŒã¿ããŒã¹ã«ä¿åãããŠããã·ãŒã±ã³ã¹ãæ¢ããŸãã DNAãã©ã°ã¡ã³ããšnåã®ç°ãªãã·ãŒã±ã³ã¹ã®äŸã瀺ããŸãã ããã€ã¹ãèŠã€ããéšåæååã®ãªã¹ããäœæããŸãã DNAã«ã¯ãAãTãGãCã®4ã€ã®æåããããŸããæ€çŽ¢ã·ãŒã±ã³ã¹ã¯éšåçã«éè€ããå ŽåããããŸãã ã·ãŒã±ã³ã¹ã¯ãå¥ã®ã·ãŒã±ã³ã¹ã®éå§ãšå®å
šã«äžèŽããããšã¯ã§ããŸããã
æåã®è¡ã«ã¯æŽæ°nãå«ãŸããŠããŸãã æ¬¡ã®nè¡ã«ã¯1ã€ã®DNAé
åãå«ãŸããŠããŸãã æåŸã®è¡ã«ã¯ããã¹ãããDNAãã©ã°ã¡ã³ããå«ãŸããŠããŸãã å
¥åããŒã¿ã®åèšéã¯ã 6 Ã10 6æåãè¶
ããŸããã
åºåã®åè¡ã«ããã§ãã¯ããããã©ã°ã¡ã³ãå
ã®ã·ãŒã±ã³ã¹ã®1ã€ã®ãªã«ã¬ã³ã¹ãæžã蟌ã¿ãŸãã éå§äœçœ®çªå·ãšãµãã¹ããªã³ã°èªäœã瀺ããŸãã 1ã€ãã¹ããŒã¹ã§åºåããŸãã DNAãã©ã°ã¡ã³ãã®æåã®çªå·ä»ãã¯1ããå§ãŸããŸãã éå§äœçœ®çªå·ã§åºåããœãŒãããŸãã ã¿ã¹ã¯ãéå§ããåã«äŸãå¿
ã確èªããŠãã ããã
äŸ
å
¥å ïŒãã©ã°ã¡ã³ãããšãã£ã¿ãŒã«ã³ããŒããŠãå
šäœã衚瀺ããŸãïŒïŒ
5
TTT
GAAGCT
CAAT
AGA
ã¢ã°ã«
çµè« ïŒ
2 TTT
6 AGA
28 AGA
30 AGA
57 CAAT
86 AGA
100 GAAGCT
190 TTT
191 TTT
196 AGA
219 TTT
232 AGA
271 TTT
284 TTT
285 TTT
298 TTT
320 TTT
330 TTT
331 TTT
342 TTT
373 AGA
397 AGA
488 AGA
509 AGA
524 AGA
565 TTT
574 AGA
605 AGA
625 CAAT
630 AGA
681 CAAT
718 TTT
719 TTT
744 AGGCA
754 AGA
784 AGA
808 TTT
821 CAAT
833 AGA
861 CAAT
879 AGA
921 AGA
955 AGA
è§£æ
ããã¯æ±ºåæŠã®æåŸã®ã¿ã¹ã¯ã§ãããè€éãã®æåŸã®ã¿ã¹ã¯ã§ã¯ãããŸããã ãã®åé¡ã®è§£æ±ºçã¯ãAho-Korasikã¢ã«ãŽãªãºã ã䜿çšãããªã©ãæé©ãªæ¹æ³ã§æååã®ãã¿ãŒã³ãèŠã€ããããšã§ããã ã¢ã«ãŽãªãºã ã¯ãç¶æ
æååãæ§ç¯ããæ€çŽ¢æååãæž¡ããŸãã æ©æ¢°ã¯æååã®ãã¹ãŠã®æåãé çªã«åãåãã察å¿ãããšããžã«æ²¿ã£ãŠç§»åããŸãã ãã·ã³ãçµäºäœçœ®ã«éãããšã察å¿ããèŸæžè¡ãæ€çŽ¢è¡ã«ååšããŸãã
å
šäœã®é£ããã¯ãã©ã€ã³ã®ãã®ãããªè§£æ±ºçãèŠã€ããå¿
èŠããããšããããšã§ããã
QR Questã¿ã¹ã¯
å
¥ã | ãããã« | å¶éæé | ã¡ã¢ãªå¶é |
---|
æšæºå
¥åãŸãã¯input.txt | æšæºåºåãŸãã¯output.txt | 1ç§ | 64ã¡ã¬ãã€ã |

æåã®è¡ã«ã¯ããã¹ãã±ãŒã¹ã®æ°ã瀺ãåäžã®æŽæ°tãå«ãŸããŠããŸãã æ¬¡ã®tè¡ã«ã¯ãã¹ããŒã¹ã§åºåããã8ã€ã®æŽæ°n iãå«ãŸããŠããŸãã
tè¡ãåè¡ã«ã¯1ã€ã®æŽæ°ãå«ãŸããŸãã
äŸ1
å
¥ã | ãããã« |
4
8 10 1 9 2 6 7 8
14 2 0 11 10 4 1 0
6 6 4 1 10 0 11 6
11 4 3 4 14 8 12 5 | 0
13
15
5 |
äŸ2
å
¥ã | ãããã« |
4
9 10 6 2 12 11 7 2
3 10 1 14 13 13 1 1
6 8 8 5 3 2 6 4
5 11 5 5 3 1 10 7 | 3
9
2
7 |
è§£æ
ãœãªã¥ãŒã·ã§ã³ã¡ãœãããžãèããªããã°ãªããªãã£ãããããã®ããŒãã¹ã¿ã¹ã¯ãæã奜å¥å¿forçãªäººã«ä»»ããŸããã QRã³ãŒãã¯ã3ã€ã®å€ã®ããŒãã«ãå«ãããã¥ã¡ã³ããžã®ãªã³ã¯ããã©ãããšãèš±å¯ããŸããã ãããã®å€ã§ã¯ãããã€ãã®æäœãå¿
èŠã§ããã
åèš8ã€ã®æ°åãå
¥åãããŸãã-ãããã®ããŒãã«ã®ã»ã«ã®åº§æšãã€ãŸããåãšè¡ã®åº§æšãšã®4ã€ã®ãã¢ã ãããã®ã»ã«ã§å®è¡ãããæäœãšãã©ã®ããŒãã«ãã远å ã®ã»ã«ãå®è¡ãããããæšæž¬ããå¿
èŠããããŸããã
ç°¡åãªæäœã䜿çšããŠããããããŒãã«AãBãCã®4ã€ã®ã»ã«ã®xor-sumã§ãããã€ã³ããã¯ã¹a 0 ... a 7ã§ã¢ãã¬ã¹æå®ãããŠããããšã確èªã§ããŸããã
R = A [a 0 ãa 1 ] ^ B [a 2 ãa 3 ] ^ B [a 4 ãa 5 ] ^ C [a 6 ãa 7 ]ã