ABC-G
å ¬å¼è§£èª¬ã®æ¹ãã·ã³ãã«ã ã£ãã åé¡ã¸ã®ãªã³ã¯ åé¡æ¦è¦ ã®é å ã¨ãæ´æ° ãä¸ããããã ã®é£ç¶ãã åã®è¦ç´ ãããªãåºéï¼ éãããï¼ãã©ã³ãã ã«é¸ã³ãããã«ãã®åºéãã©ã³ãã ã·ã£ããã«ããã æçµçãªé åã®è»¢åæ°ã®æå¾ å¤ã mod 998244353 ã§æ±â¦
æåãé ç¹ã«ã¢ã«ãã¡ãããã辺ã«æååãä¹ããã°ã©ããèãã¦ãããããã¾ã解ããªãã£ãã é ç¹ã«æååãä¹ãã¦ãããã¨ããæç«ããç®æã«è¾ºãå¼µã£ãã°ã©ããèããã¨ãã¾ããã£ãã åé¡ã¸ã®ãªã³ã¯ åé¡æ¦è¦ è±å¤§æå 2 æåãããªã åã®æåå ãä¸â¦
ãããé¢ç½ãã£ãï¼ åé¡ã¸ã®ãªã³ã¯ åé¡æ¦è¦ äºæ¬¡å å¹³é¢ä¸ã«ç¹ 㨠ã¨ãã åã®ç¹ããããåä¸ç´ç·ä¸ã« 3 ç¹ãä¹ããã¨ã¯ãªãã ã®é å ã§ãã£ã¦ã次ã®æ¡ä»¶ãæºãããã®ãåå¨ãããã©ãããå¤å®ããåå¨ãããªãã° 1 ã¤ç¤ºãã ãæ¡ä»¶ã ã«å¯¾ãã¦ã2 ç¹ , ãâ¦
Euler Tour ãã¦ãé 延è©ä¾¡ã»ã°æ¨ï¼åºéå ç® + åºé minï¼ã«ä¹ãã¦......ã¨ãã解æ³ãèãã¦ããã¨ããã«ããã¾ãã«ãã·ã³ãã«ãªæ³å®è§£æ³ãç®ã«ãã¦ãæåããï¼ åé¡ã¸ã®ãªã³ã¯ åé¡æ¦è¦ é ç¹æ° ã®éã¿ä»ãæ¨ãä¸ããããã ã«å¯¾ãã¦ã次ã®åã«çããã åâ¦
æ¹éã決ããã®ã大å¤ãªåé¡ã åé¡ã¸ã®ãªã³ã¯ åé¡æ¦è¦ äºæ¬¡å å¹³é¢ä¸ã® åã®æ ¼åç¹ã«ç¢ç³ãç½®ããã¦ããã ãã®ã¨ããç¢ç³ã«ãã£ã¦å²ããã¦ããæ ¼åç¹ã®åæ°ãæ±ãããããæ£ç¢ºã«ã¯ãããã®ç©ºãæ ¼åç¹ããä¸ä¸å·¦å³ã®ç©ºãæ ¼åç¹ã¸ã®ç§»åãç¹°ãè¿ãã¦ç¹ (-1, â¦
ããããªè§£æ³ããã åé¡ã¸ã®ãªã³ã¯ åé¡æ¦è¦ é ç¹æ° ã®ç¡åæ¨ãä¸ãããããåé ç¹ ã«ã¯è² ãå¡ããã¦ããã ãã®ã°ã©ãã«ããã¦ã ã§ãããããªé ç¹çµ () ã«ã¤ãã¦ã®ã2 ç¹ éã®è·é¢ã®ç·åãæ±ããã å¶ç´ èããã㨠ãã¼ã¸ãã¯ã§èãããä¾ã«ãã£ã¦é ç¹ â¦
ãã®è¦ãç®ã§ãå¹¾ä½ãã«ãªãã®ãé¢ç½ãï¼ åé¡ã¸ã®ãªã³ã¯ åé¡æ¦è¦ é«æ©å㯠種é¡ã®æ³³ãæ¹ãã§ããã 種é¡ç®ã®æ³³ãæ¹ã§ã¯ã1 ç§éã«ä½åã ã ãæ¶è²»ãã¦ã ã¡ã¼ãã«é²ããã¨ãã§ããããã®ã¨ãã次㮠åã®ã¯ã¨ãªã«çããã ãã¯ã¨ãªã æ£ã®å®æ° ãä¸ããããâ¦
Dilworth ã®å®çãããDAG ã®æå°ãã¹è¢«è¦ï¼ï¼ ãã¤ã¦æµè¡ã£ãé«åº¦å ¸åã åé¡ã¸ã®ãªã³ã¯ åé¡æ¦è¦ åã®æåå ãä¸ãããããåæååã«ã¯éã¿ ãã¤ãã¦ããã ãããã®æååãããã©ã® 2 ã¤ã®æååãäºãã«ä»ãé¨åæååã¨ãã¦å«ã¾ãªããã¨ããæ¡ä»¶ãæºâ¦
ã®è¨ç®éã¾ã§ãªãæ¯è¼çããã§ããï¼ åé¡ã¸ã®ãªã³ã¯ åé¡æ¦è¦ è¡ ããã£ã¦ãè¡ éã®è¡ãæ¥ã«ã¯ ã ãã®éè¡æããããã åã®å¸å ´ãããããè¡ ã§è¡ããã åããããã æåãç¡éã®ææéãæã£ã¦ãããããã¤ãã®å¸å ´ã«åå ãã (å ¨ãåå ããªãã¦ããã)â¦
ãåæ°ã®æå¾ å¤ãã¯ã(k å以ä¸ã®ç¢ºç) ã®ç·åã«ä¸è´ããï¼ï¼ ãã¨ã¯æåãªã åã®ä¸æ¬¡é¢æ°ã®ç©ã¯äºåæ¨ã®ãããªè¨ç®é åºã§ ã®è¨ç®éã§æ±ããããã¨ããè©±ï¼ åé¡ã¸ã®ãªã³ã¯ åé¡æ¦è¦ è²ã ã§ãããããªé´ä¸ã æãã¤ããããããã 2 種é¡ä»¥ä¸ããã ãããâ¦
æ¬å½ã«è²ããªè§£æ³ãããåé¡ã£ã½ãï¼ï¼ åé¡ã¸ã®ãªã³ã¯ åé¡æ¦è¦ é ç¹ ã® é ç¹ãããªãç¡åã°ã©ãããããæåã¯è¾ºããªãã以ä¸ã® 2 種é¡ã®ãªã³ã©ã¤ã³ã¯ã¨ãªã«çããã ã¯ã¨ãªã¿ã¤ã 1ï¼é ç¹ éã«è¾ºãçµã¶ ã¯ã¨ãªã¿ã¤ã 2ï¼é ç¹ ã®åæ¹ã«é£æ¥ããé ç¹ãããâ¦
人ç®è¦ã¦ãé å¼µãã°è§£ããããã¨æããã®ã§ãã³ã³ãã¹ãä¸ã«ãªãã¨ãé å¼µã£ã¦éããï¼ åé¡ã¸ã®ãªã³ã¯ åé¡æ¦è¦ "1+2*34" ã®ãããªæååãä¸ããããã ãã®æååã®é£ç¶ããé¨åæååããã¹ã¦èã㦠æ°å¼ã¨ãã¦æç«ãã¦ãããªãããã®æ°å¼ãè¨ç®ããå¤ æ°â¦
ãã®åé¡ãæãåºããï¼ åé¡ã¸ã®ãªã³ã¯ åé¡æ¦è¦ ç´ æ° ã¨ã åã® 1 ä»¥ä¸ ä»¥ä¸ã®æ´æ° ãä¸ããããã ãæºããæ´æ° ãåå¨ãããã㪠ã®çµã®åæ°ãæ°ãä¸ããã å¶ç´ èããã㨠ä¸ç¬ãåå§æ ¹ãèããããªã£ãããåå§æ ¹ã§ã¯ãªããä½æ°ããèããæ¹ãè¨ç®éâ¦
2 å¤æ°å£ã¢ã¸ã¥ã©é¢æ°ã®åã®æå°åï¼ ä¿ã«ããçããåãã åé¡ã¸ã®ãªã³ã¯ åé¡æ¦è¦ ã®ã°ãªããããã£ã¦ãåãã¹ ã«ã¯å¤ ãè¨ããã¦ããã ããã¤ãã®ãã¹ã«ãxããæãã¦ããããxãã¯æ¸ããããã¹ã®å·¦ä¸ã®è§ã¨å³ä¸ã®è§ãçµã¶ç·åãããã³å³ä¸ã®è§ã¨å·¦ä¸ã®â¦
2 å¤æ°å£ã¢ã¸ã¥ã©é¢æ°ã®åã®æå°åãæå°ã«ããã«ãããã¤ï¼ åé¡ã¸ã®ãªã³ã¯ åé¡æ¦è¦ 種é¡ã®ã¹ãã«ããããããããåæç¶æ ã®ã¹ãã«ã¬ãã«ã¯ 1 ã§ããããæ大㧠5 ã¾ã§ä¸ãããããã¹ãã« ã®ã¹ãã«ã¬ãã«ã 1 ä¸ããã®ã«å¿ è¦ãªã³ã¹ã㯠åã§ããã 種é¡ã®â¦
o......f...(.....)... ã®ãããªãã¿ã¼ã³ã§ã(.....) ã®ä¸èº«ãæ¶ãããããªå ´åãæåè¦è½ã¨ããã åé¡ã¸ã®ãªã³ã¯ åé¡æ¦è¦ é·ã ã®æåå ã«å¯¾ãã¦ã次ã®æä½ã好ããªåæ°ã ãè¡ãããæä½å¾ã®æååã®é·ãã¨ãã¦èããããæå°å¤ãæ±ããã ãé£ç¶ããé¨â¦
Wavelet Matrix ã®ç·´ç¿ã« åé¡ã¸ã®ãªã³ã¯ åé¡æ¦è¦ åæç¶æ ã ã®é åã§ããæ°å ãä¸ããããã 次㮠2 種é¡ã®ã¯ã¨ãªã«çããããªãã çªç® () ã®ã¯ã¨ãªãããªããå¾ã«ã¯ãæ°å㯠åã«åå²ãããç¶æ ã¨ãªãã ã¯ã¨ãªã¿ã¤ã 1ï¼ç¾¤æ°åã® çªç®ã«ã¤ãã¦ãå é â¦
ã³ã³ãã¹ãå¾ã«è§£ããããªãã¨ãè©°ãåã£ãã åé¡ã¸ã®ãªã³ã¯ åé¡æ¦è¦ éè² æ´æ° ã¨æ´æ° ã«å¯¾ãã¦ãé¢æ° ã次ã®ããã«å®ç¾©ããã æ£æ´æ° ãä¸ãããã¦ã次ã®æ¡ä»¶ãæºããéè² æ´æ°å ã¨æ£ã®æ´æ° ã®çµã®åæ°ã 998244353 ã§å²ã£ãä½ããæ±ããã () å¶ç´ èãâ¦
é¤åçï¼ å¦ã³ã®å¤ãåé¡ã ã£ããSubset Convolution ã®æ¹ã¯ã¡ãã£ã¨é å¼µã£ã¦ãã®å¾å¾©ç¿ããã åé¡ã¸ã®ãªã³ã¯ åé¡æ¦è¦ é ç¹çªå·ã ã§ããã°ã©ã ããããæåã辺㯠1 æ¬ããªãã ä»¥ä¸ ä»¥ä¸ã®å¤ãããªããµã¤ãº ã® 2 ã¤ã®æ°å 㨠ãããã ä»ãããã 2 ã¤â¦
åºãæããã°ãåã¹ãããã«å¯¾ãã¦æ¢ããç§æ°ãå²ãå½ã¦ããæ¹æ³ãèããå²å½åé¡ã ã¨è¨ãããã åé¡ã¸ã®ãªã³ã¯ åé¡æ¦è¦ ã®ã°ãªãã ãä¸ãããããåãã¹ã«ã¯ 0 ãã 9 ã¾ã§ã®æ°åãæããã¦ããã ä»ã次ã®æ¡ä»¶ãæºãã 0 以ä¸ã®æ´æ°å¤ ãèããã¨ãã â¦
æå DP ã§è¿·èµ°ãã¦ãæå¾ å¤ã®ç·å½¢æ§ã使ã£ã¦ ã¾ã§æ¥ãããã§ããPolynomial Taylor Shift ãªã解æ³ããããããï¼ åé¡ã¸ã®ãªã³ã¯ åé¡æ¦è¦ åã®ãã£ã³ãã£ããã£ã¦ãåãã£ã³ãã£ã®è²ã¯æ£ã®æ´æ° ã§è¡¨ããã¦ããã å ã«å¯¾ãã¦ã åã®ãã£ã³ãã£ãã åã®ãâ¦
ç¹ç´ ãã¹ã®ãããã³ã°ç³»ã®åé¡ãåºãªããªããã¨æã£ã¦ãããåºãï¼ åé¡ã¸ã®ãªã³ã¯ åé¡æ¦è¦ é ç¹æ° ãè¾ºæ° ã®åç´ç¡åã°ã©ããä¸ããããã3 é ç¹ ãæå®ãããã 2 é ç¹ ã端ç¹ã¨ããåç´ãã¹ã§ãã£ã¦ãé ç¹ ãéããã®ãåå¨ãããã©ããå¤å®ããã å¶ç´ â¦
é¢ç½ãã£ã åé¡ã¸ã®ãªã³ã¯ åé¡æ¦è¦ ã®ã°ãªããããããåãã¹ã«ã¯æ°å¤ãæ¸ããã¦ããã åã®æ°å¤ãéããã¨ã ã åãã¤ããã ä»ãåè¡ã«ã¤ãã¦ããã® åã®æ°å¤ãèªç±ã«ä¸¦ã³æ¿ãã¦ããã ãã®çµæã¨ãã¦ããã¹ã¦ã®åã ã®é åã§ããããã«ãããã¨ãå¯è½â¦
floor sumï¼ï¼ï¼ ã³ã³ãã¹ãä¸ã«æãã¤ãã¦ããã£ãï¼ åé¡ã¸ã®ãªã³ã¯ åé¡æ¦è¦ ç¿ ããã£ã¦ãç¿ ã«ã¯ åã®ç³ãä¹ã£ã¦ãããã¾ãã空ã®è¢ãããã ããªãã¯ä»¥ä¸ã® 2 種é¡ã®æä½ã好ããªé çªã§ 0 å以ä¸ä½åº¦ã§ãè¡ããã¨ãã§ããã ç³ã 1 å以ä¸è¼ã£ã¦ããç¿â¦
é»ãã¹ãé¿ããªãããé·æ¹å½¢é åã®å¤ã®ç·åãæ大åããåé¡ã¨ãã¦è§£ããï¼ åé¡ã¸ã®ãªã³ã¯ åé¡æ¦è¦ ã®ã°ãªããããã£ã¦ãåãã¹ ã«ã¯æ£ã®æ´æ° ãæ¸ããã¦ããã ã°ãªããã«å«ã¾ããé·æ¹å½¢é åã®ãã¡ããé·æ¹å½¢é åã«å«ã¾ããå¤ã®ç·åãã¨ãé·æ¹å½¢é åã«å«â¦
é åãæ°ãä¸ããç³»ã®åé¡ããã¾ããåæ°ããæã£ã天æç㪠DP ãããã¤ã¡ã¼ã¸ åé¡ã¸ã®ãªã³ã¯ åé¡æ¦è¦ æ´æ°å ãä¸ããããã ãã®æ°åã® éãã®é åã®ãã¡ã ã§ãããã㪠ãã¡ããã© åã§ãããããªãã®ã®åæ°ã 998244353 ã§å²ã£ããã¾ããæ±ããã å¶â¦
ããã楽ããã£ãã解æçã«å¼ã§æ±ããããã®ãã åé¡ã¸ã®ãªã³ã¯ åé¡æ¦è¦ åã®æå Rã åã®æå Gã åã®æå B ã並ã¹ã¦ã§ããæååã®ãã¡ãé¨åæååã¨ãã¦å«ã¾ãã RG ãã¡ããã© åã§ãããããªãã®ã®åæ°ã 998244353 ã§å²ã£ããã¾ããæ±ããã å¶â¦
opt ããã®å¾æç³»ã£ã¦æãã ã£ãï¼ åé¡ã¸ã®ãªã³ã¯ åé¡æ¦è¦ ä¸è¾ºã®é·ããæ´æ° ã®æ£ è§å½¢ãããã é ç¹ããå§ãã¦ãå¨ä¸ã«è·é¢ 1 ãã¨ã«é»ãç³ãç½ãç³ãç½®ãã¦ããã ç³ã®ç½®ãæ¹ã®ãã¡ãå辺ä¸ã«ããç½ãç³ã®åæ°ãçãããªããããªãã®ã®åæ°ã 998244353 â¦
opt ããã®ããã®ã¾ã¾ã ã¨åªã¢ã¸ã¥ã©æé©åãªã®ã§ãéæ¨åã®é¸ã¶ã»é¸ã°ãªããã²ã£ããè¿ãã°å£ã¢ã¸ã¥ã©æé©åããã£ã¦æå°ã«ããã§ã§ããããè³¢ãã£ãã 競ããã§è¨ãã¨ããã®ãçããåããã åé¡ã¸ã®ãªã³ã¯ åé¡æ¦è¦ ã®ã°ãªããããã£ã¦ãåãã¹ ã«ã¯æ´æ°â¦
é¢ç½ãã£ã åé¡ã¸ã®ãªã³ã¯ åé¡æ¦è¦ 以ä¸ã®ç´ æ°ã®ã¿ãç´ å æ°ã«æã¤æ£æ´æ°ã -smooth number ã¨å¼ã¶ã æ´æ° ããã³ ã100 以ä¸ã®ç´ æ° ãä¸ããããã®ã§ã 以ä¸ã® -smooth number ã®åæ°ãæ±ããã å¶ç´ èããã㨠ã³ã³ãã¹ãä¸ã«ã¯ãæç´ DFS ãé å¼µã£ã¦éâ¦