競技プログラミング日記

主に AtCoder の記事です

2023-03-05から1日間の記事一覧

AtCoder Beginner Contest 292C

ABC292C 何を全探索するか,探索する範囲を小さくすること, 前計算すること. 基本通りにやればAC. まず \(a,b,c,d\) のどれかを \(N\) の範囲で全探索する. 次に \(b\)は \(N/a\) 程度なので, \(a,b\) で \(O(Nlog N)\) 程度. あとは, \(c,d\)を高速…

AtCoder Beginner Contest 292 参加

BABC292 ABC292に参加. 結果A~Dの1000点. Eが解けなかったのが勿体ないのと, Cに時間を使いすぎた. コメントなどABCは部分点が無いのがきつい. 1問の配点が大きいため,一つ多く解けると一気に順位が上がって, 解けないと一気に下がる. AtCoder Jobs …

AtCoder Beginner Contest 292D

ABC292D DFSして数える.dfs(cu){ 頂点に入るときの処理 for(ne in to[cu]){ 次の頂点に遷移する辺に関する処理 dfs(ne) 前の頂点に戻るときの辺に関する処理 } 頂点から出るときの処理}が基本形. あとは,ループや多重辺に注意. 使っている記号,マクロ等…

AtCoder Beginner Contest 292E

ABC292E 辺の取り方は \(O(N^2)\) . しかし,辺の追加がやっかいで,シュミレーションするとRE,TLEになりやすい. 最終的なグラフの性質に注目する. 頂点 \(x\) に対して, \(x\)から追加すべき点は何かを考える. \(x\) から何度か辺を辿って辿り着ける点…