めもめも

このブログに記載の内容は個人の見解であり、必ずしも所属組織の立場、戦略、意見を代表するものではありません。

2021-09-01から1ヶ月間の記事一覧

089 - Partitions and Inversions(★7)の解説

何の話かと言うと atcoder.jp上記の問題について、AVL 木(ソート済みのリストに対して、ソートを保った挿入・削除を で実行できるデータ構造)を用いた別解を紹介します。 再帰処理による解法 まずは直感的にわかりやすい再帰的な解法を考えます。与えられ…

081 - Friendly Group(★5)の解説

何の話かというと atcoder.jp上記の問題の別解です。公式解説 では、身長と体重を 2 次元にプロットして、身長と体重を対称に扱う解法が示されています。あえてこれらを非対称に扱うことも可能です。 身長だけの場合 仮に、身長についてだけ考えればよいとす…

074 - ABC String 2(★6)の解説

何の話かというと atcoder.jp上記の問題は、公式解説にもあるように、具体例を試しながら隠された規則性を発見する必要があります。どのような試行錯誤で、正解に至れるのか、一例を紹介します。 まずはしらみつぶし まずは、しらみつぶしで、文字列が変化す…

072 - Loop Railway Plan(★4)の解説

何の話かというと atcoder.jp上記の問題をネタに「キューを用いた全件探索」の話をします。 キューを用いた全件探索 enakai00.hatenablog.com上記の記事では、キューを用いて木構造データを探索するという話をしています。木構造データに限らず、複数の選択…

071 - Fuzzy Priority(★7)の解説

何の話かというと atcoder.jp上記の問題をネタに、「極端に小さな制約条件に注目する」という話をします。まぁ、下記のネタと似たような話です。enakai00.hatenablog.com の場合 ポイントは、 という条件です。一般には、もっとたくさんの順列が選べるはずな…

070 - Plant Planning(★4)の解説

何の話かというと atcoder.jpこの問題をネタに L1 ノルムの最小化の話をします。 L2 ノルムの最小化 平面上の点の集合 に対して、各点との「ユークリッド距離の2乗の話」 を最小にする点 は、 の条件から、与えられた点の集合の重心に一致することがわかりま…

068 - Paired Information(★5)の解説

何の話かというと atcoder.jp上記の問題をネタに、Union-find の解説と、Union-find の特徴を利用した別解を紹介します。 Union-find Union-find の基本的な実装はこちらになります。 group_parent = defaultdict(lambda:None) def create_group(x): global …