CodeforcesDIV2
Functional Graph ã®ãµã¤ã¯ã«åæï¼ï¼ï¼ ã©ã¤ãã©ãªæ´åãããã¨ããã£ããããã§ã©ã¤ãã©ãªä½¿ãã¦ããã£ãï¼ åé¡ã¸ã®ãªã³ã¯ åé¡æ¦è¦ (æ訳) è¦ç´ æ° ã®æ°å ããã£ã¦ãã¯ããã¯å ¨è¦ç´ ã 0 ã¨ãªã£ã¦ããã以ä¸ã®æä½ã好ããªåæ°ã ãè¡ã£ã¦ãæ°åã ã®ç¶æ â¦
ãªãã¨ãéãããçµæ§è¿·èµ°ããã åé¡ã¸ã®ãªã³ã¯ åé¡æ¦è¦ 0 㨠1 㨠2 ã®ã¿ãããªã ã®è¡åãä¸ããããããããã®è¡åã®ãã 3 ã¤ã®è¡ã good ã§ããã¨ã¯ããã©ã®åã«ã¤ãã¦ããããã 3 è¡ã®å¤ããã¹ã¦çãããããã¹ã¦äºãã«ç°ãªããã¨ããæ¡ä»¶ãæºããâ¦
ã°ãªããã°ã©ãã¯äºé¨ã°ã©ãï¼ï¼ï¼ åé¡ã¸ã®ãªã³ã¯ åé¡æ¦è¦ ã®ãã¹ç®ã«æ´æ°å¤ (ãã¹ ã«ã¯ ) ãæ¸ããã¦ããã åãã¹ã«ã¤ãã¦ããå ã®æ´æ°å¤ã®ã¾ã¾ã«ãããã¾ãã¯ãå ã®æ´æ°å¤ã« 1 ã足ãããã®ãããããã¨ã«ãã£ã¦ãã©ã®é£æ¥ãã 2 ãã¹ã®å¤ãäºãã«ç¸ç°â¦
æ¡ DP è¦æããã... åé¡ã¸ã®ãªã³ã¯ åé¡æ¦è¦ æ´æ° ãä¸ãããããæ´æ°ã®çµ ã§ãã£ã¦ã xor = ãæºãããã®ã®åæ°ãæ±ããã (ã¨ãããã¹ãã±ã¼ã¹ã åä¸ãããã) å¶ç´ èããã㨠ã¨ããããã xor = ã¨ããæ¡ä»¶ã¯ ã 㨠ãäºé²æ³è¡¨ç¾ããã¨ãã«ãã¨ãã« â¦
æ¬çªãªãã¨ããã¶ã¼ãã¼ãã決ã¾ã£ãï¼ åé¡ã¸ã®ãªã³ã¯ åé¡æ¦è¦ 赤ãããªã¼ã¨éãããªã¼ã¨ãããã çµã®ãã¥ããã§ãããããããã赤ãããªã¼ã åãéãããªã¼ã åå ¥ã£ã¦ããã ããããã«ã´ã«è©°ãã¦ããããã1 ã¤ã®ã«ã´ã«ã¯ã¡ããã© åã®ããªã¼ãå ¥ãâ¦
æ¹éç«ã£ã¦ããããã¡ãã£ã¨å®è£ è¾ã ^^; åé¡ã¸ã®ãªã³ã¯ åé¡æ¦è¦ é·ã ã®æ£ã®æ´æ°å ã¨ãæ£ã®æ´æ° ãä¸ããããã æ£æ°åã®é£ç¶ããé¨ååã§ãã£ã¦ããã®ç©ããåã® åã¨ãªã£ã¦ãããã®ãä½éãããããæ±ããã å¶ç´ èããã㨠ããã¨æããã¨ã¯ãç©ã®ä¸â¦
ããã¯æ¥½ããï¼ï¼ï¼ é çªããã¾ã決ããã°ãå ¨é¨ã®æ å ±ãæããªãã¦ããåæ°ã®ã¿ã®æ å ±ã«è½ã¨ããç³»ã åé¡ã¸ã®ãªã³ã¯ åé¡æ¦è¦ è¦ç´ ã®æ°å ã¨ã ã®äºæ¬¡å æ°å ãä¸ããããã åã® ã®ä¸ãã åãé¸ã³ã æ®ãã® åã® index ã®ä¸ãã ååã ã®è¡ãã¯ãã«ãé¸â¦
å®è£ ãã¨ã°ã¨ã°ã®ã¨ã°ã ãã©ãå®ã¯ãªãã¨ãé 延è©ä¾¡ã»ã°æ¨ããå¿ è¦ãªãã¦ãæ®éã®ã»ã°æ¨ã ãããã°è§£ãã¦ãã¾ãï¼ åé¡ã¸ã®ãªã³ã¯ åé¡æ¦è¦ åã®æ´æ° ã«å¯¾ãã¦å®ã¾ãé ã次ã®ããã«å®ç¾©ãã: ã®é¨åéåãé¸ã¶ éãã®æ¹æ³ããä¸æ§ã©ã³ãã ã«é¸ãã§ãããã«â¦
åå¼·ã«ãªã£ã...ãã©ãããç¥ããã«ã§ãããããªã®ï¼ï¼ åé¡ã¸ã®ãªã³ã¯ ãã¨ãLCM ã®æå°å¤ãã¼ã¸ã§ã³ãããï¼ drken1215.hatenablog.com åé¡æ¦è¦ åã®æ£ã®æ´æ° ãä¸ãããããããããã 2 åé¸ã㧠LCM ãã¨ã£ã¦ã§ãã åã®æ´æ°ã®æ大å¤ãæ±ããã å¶ç´ â¦
åã«æ©ãã ããªãåã ã¨æ°ä»ããªãã£ã... åé¡ã¸ã®ãªã³ã¯ åé¡æ¦è¦ 以ä¸ã®åãã« åçãã (ååãã¯å®å ¨ç¬ç«)ã åã®åºé ãä¸ããããããããã®åºéã® Union åæ°ã¨ã¯ãéãªãã®ããé¨åããã¼ã¸ãã¦ã§ããã°ã«ã¼ãã®åæ°ã®ãã¨ã§ããã åã®åºéããã©â¦
ãããã貪欲ã«çªãé²ãå¦çãæ¸ãã®ãå®ã¯ããªãè¦æãããããªã åé¡ã¸ã®ãªã³ã¯ åé¡æ¦è¦ åã® 0 以ä¸ã®æ´æ° ãä¸ãããããä¸æã«æ£ã®æ´æ° ãé¸ã¶ãã¨ã§ã XOR XOR ... XOR ã®å¤ã®æ大å¤ã®æå°å¤ãæ±ããã å¶ç´ èããã㨠æå°å¤ãæ±ãããã¨ãããã¨â¦
é¨åæååã®é·ç§»ã¯æç´ã«æ±ããããã åé¡ã¸ã®ãªã³ã¯ åé¡æ¦è¦ é·ã ã®æåå c ã¨ãçãæåå s, t ãä¸ãããã'a'ã'z' 㨠'?' ãããªã£ã¦ããã'?' ãåããæ¹æ³ã®ãã¡ã c ã®é£ç¶ããé¨åæååã¨ã㦠s ãå«ãç®æã®åæ°ãã c ã®é£ç¶ããé¨åæåâ¦
æçæ°ä½¿ã£ã åé¡ã¸ã®ãªã³ã¯ åé¡æ¦è¦ äºæ¬¡å å¹³é¢ä¸ã« åã®ç¹ãããããããã®ä»»æã®ãã¢ãçµãã§ã§ããç´ç·ãã¡ãèãã (ç°ãªããã¢ãåä¸ã®ç´ç·ãçæããã¨ãã¯ãä¸ã¤ã®ç´ç·ã¨ã¿ãªã)ã ãããã®ç´ç·ãã¡ã®äº¤ç¹ãä½ç¹çããããæ±ããã å¶ç´ èãããâ¦
é¢ç½ãã£ã åé¡ã¸ã®ãªã³ã¯ åé¡æ¦è¦ (ããæ訳) é·ã ã®æ°å ã復å ãããããã®æ°åã«å¯¾ãããã並ã³æ¿ãé å ããã£ã¦ é£ãåã 2 è¦ç´ ã® min ãã¨ã£ã¦ã§ããé·ã ã®æ°åã ã§ä¸¦ã³æ¿ãã㨠ã¨ãªã é£ãåã 2 è¦ç´ ã® max ãã¨ã£ã¦ã§ããé·ã ã®æ°åã ã§â¦
ãã©ãµããããåé¡ã¨ããæãããªãèç¥ã®ãªããããªå¯¾è±¡ãç¶æ¥ããããæãã®åé¡ ^^; åé¡ã¸ã®ãªã³ã¯ åé¡æ¦è¦ é·ã ã®æ´åã®ã¨ããã«ãã³åå ¨é¨ãéããéåã«ã¤ãã¦ã® trie æ¨ãä½ãã ãã® trie æ¨ä¸ã®æ大ãããã³ã°ã®ãµã¤ãºã 1000000007 ã§å²ã£ããâ¦
é¢ç½ãã£ãã ãå ¨ä½ã«ã¤ãã¦ã®ç·åã«ã¤ãã¦ã®ç·åãããåå¥ã®è¦ç´ ã«ã¤ãã¦ã®ç·åãåè¦ç´ ã«ã¤ãã¦ç·åãã¨ããã㯠åºéã®é£çµæåã®åæ°ã¯ãåééã«å·¦ç«¯ãå ¥ãè¾¼ãããæ°ãã ã¨ããå ¸åãã¯ãè©°ã¾ã£ãåé¡ã åé¡ã¸ã®ãªã³ã¯ åé¡æ¦è¦ è¦ç´ ãããªãæ°å â¦
ããããã®ã«æ £ãã¦è¡ãããã åé¡ã¸ã®ãªã³ã¯ åé¡æ¦è¦ é·ã ã®ç·åä¸ã«ãã©ã³ãã ãªåºéã åã¨ã£ãã¨ãã®ãåºéã æ¬ä»¥ä¸éãªã£ã¦ããé¨åã®é·ãã®æå¾ å¤ãæ±ãã (998244353 ã§å²ã£ãä½ãã®å½¢å¼ã§)ã ãªããåºéã®ã©ã³ãã ãªé¸ã³æ¹ã¨ã¯ãç·åãã 2 ç¹ãâ¦
ããã ã£ãï¼ï¼ï¼ drken1215.hatenablog.com ãã¡ããé«éã¼ã¼ã¿å¤æã¯ãããªãã¦ãæç´ãªå é¤åçã§éã«åãã åé¡æ¦è¦ æ´æ° ãä¸ããããã空㮠vector ããã£ã¦ ä»¥ä¸ ä»¥ä¸ã®æ´æ°ã®ä¸ããä¸æ§ã©ã³ãã ã« 1 ã¤é¸ã³ã ããã vector ã« push ãã ãã®ã¨ã â¦
ä¸å½å°ä½å®çã®ãã¨ããããã調ã¹ã¦ãããå¢ãã§è§£ããã åé¡ã¸ã®ãªã³ã¯ åé¡æ¦è¦ æ´æ° ãä¸ããããã mod. ) ãæç«ãããããª ä»¥ä¸ ä»¥ä¸ã®æ´æ° ãæ°ãä¸ããã å¶ç´ ã¯ç´ æ° < è§£æ³ Fermat ã®å°å®çãã以ä¸ã®ãã¨ãè¨ãã: 㯠mod. ã«ããã¦å¨æ ã§ããâ¦