2023-01-01から1年間の記事一覧

WSLのpipenvの中のtkinterで作ったアプリで日本語入力

pipenvはあまり関係なさそう。 だいたい以下の記事で解決した。 astherier.com 自分用メモ タイトルにあるようなキーワードで検索したが、記事が少し古めのものが多く(2023/10現在に対し2020,2021あたり、WSL2やWSLgが出る前後?)、今なら不要な設定もして…

形式的冪級数、ケイリーの公式、Prüfer コード

atcoder.jp 難しかったけど解説ACしたら何かわかったような気がしたのでメモ。 解法の考え方 N頂点ラベル付き木は、各要素が1~Nで長さN-2の配列に1対1対応させることができる。(Prüfer コード。これを使うと、N頂点ラベル付き木の個数が $N^{N-2}$ 個であ…

最小カットは最大フロー

良く忘れるのでメモ(使わないとどっちが最小か忘れる)使った問題(解説AC) Submission #41137764 - Denso Create Programming Contest 2022(AtCoder Beginner Contest 239) 学んだこと 頂点のカット(頂点を消す、到達不可にする)は最小カットで考えにく…

ゲームの勝ち負けの問題

どうも苦手意識があるので、典型的な解法やテクニックをまとめることにする。 問題を解いたら適宜追加する。未来の自分、よろしく。 動的計画法 dp[盤面] = その盤面からスタートした時に勝つ/負ける として、勝ち負けが自明な状態(決着がついたときとか)…

オイラーツアー Euler Tour

部分木に対するクエリとかを効率的に行いたいときに便利。 ABC294Gで学んだ。 atcoder.jp やり方 根からdfsしたときに、辺(あるいは頂点)を通った順に記録しておく。 ついでに問題に必要な情報も同じ順番で記録しておく。 こうすると任意の部分木について…

二乗の木DP

ABC_287_FでTLEしまくった学びをメモ F - Components このdpを> で書いていたらTLEして、 > で、dp[i][j] のjのループ回す範囲を上限(部分木の頂点数)超えないように適切に管理して書いたらACした。jがスパース(?)になりうるからmapのほうがお得やろ、…