2021-06-01ãã1ã¶æéã®è¨äºä¸è¦§
rerooting DPãrerooting ããã DPãDP with rerooting ã¨ããªãå¥ã«ããããã å ¨æ¹ä½æ¨ DP èªä½ãæãã¦ãrerootingãã¨è¨ãããã¨æ°ã«ãªãã¾ãã rerooting ã¯æ¨ã®æ ¹ãå¤ããæä½ï¼å ¨æ¹ä½æ¨ã®ä¸ã§èããããï¼ãæãã¦ãã¦ãå ¨æ¹ä½æ¨ DP èªä½ã®ãã¨ãæâ¦
ã¤ã³ã¿ã©ã¯ãã£ãåé¡ã¯æå ã§ã®ãããã°ãé¢åãã¡ãªã®ã§ãããã ã¨æã£ã¦ãã人ãå¤ããã§ãã coproc ã¨ããã·ã§ã«ã®æ©è½ã使ãã°ããããç°¡åã«ã§ããªãããªï¼ã¨æã£ãã®ã§ãæ¸ãã¦ã¿ã¾ãã ã¾ããã ç°¡åã¨ã¯è¨ã£ã¦ãã以ä¸ã®ãã®ã¯èªåã§æ¸ã or çæâ¦
part 1 以éããããã¯ãããã¾ããã å°å ¥ï¼ 競ããã§ãã絶対誤差ã¾ãã¯ç¸å¯¾èª¤å·®ã \(10^{-6}\) 以ä¸ãªãã°æ£è§£ã¨å¤å®ããããã¨ãã£ãæè¨ã¯ã¡ããã¡ããè¦ããã¾ãã æãåºãã·ãªã¼ãº \(2e-3\) atcoder.jp æã²ã§ãããã pic.twitter.com/64N0Qk3SbXâ â¦
ãbitset 㧠64 åé«éåã§ãã¾ããã64 ã¯å®æ°ãªã®ã§ãªã¼ãã¼ã¯å¤ããã¾ãããã®ãããªèª¬æã¯ã競ããçéã§ãã³ãã³è¦ããã¾ãã 59 æ¥ç®ã®è§£èª¬ã§ããstd::bitset ãªã©ã使ã£ãé«éåãã¯ããã¯ã¯éå»ã« AGC ã«ãåºé¡ããããã¨ãããéè¦äºé ã§ãã®ã§ãçâ¦
\(n\) 以ä¸ã®ç´ æ°ã®åæ°ãæ±ããé¢æ° \(\pi(n)\) ãæã£ã¦ããã¨ãã¾ãã ãã®ã¨ãã\(n\) ã®ç´ æ°å¤å®ã¯ \(\pi(n)-\pi(n-1) = 1\) ãã©ããã§ã§ãã¾ãã fn is_prime(n: usize) -> bool { n > 0 && prime_pi(n) - prime_pi(n - 1) == 1 } ãã¨ãã° \(O(n^{3/â¦