2023-07-01から1ヶ月間の記事一覧

ABC312 C - Invisible Hand (Diff:727 茶)の解説 [AtCoder][Python]

8/2: 修正、図の追加を行いました。 問題へのリンク https://atcoder.jp/contests/abc312/tasks/abc312_c 問題概要 りんご市場に N 人の売り手と M 人の買い手がいる。 i 番目の売り手は、A[i]円以上でならりんごを売ってもよいと考えている。i 番目の買い手…

CodeForces Round 889 Div. 2 A Dalton the Teacher の解説 [Python]

2023/8/21 文章を修正しました。 問題文(英語) https://codeforces.com/contest/1855/problem/A 問題概要 N人の生徒が1列に並んでおり、生徒 i (1≦i≦N)は椅子 p[i](1≦p[i]≦N)に座っている。先生は生徒を2人選んで交換する動作を行える。この時、すべての生徒…

ABC312 B - TaK Code (Diff:216 灰) の解説[AtCoder][Python]

最近AtCoderでよく見る、「実装の重いB問題」でしたね。 問題概要 9x9マスの領域で、左上と右下の3x3マスがそれぞれ黒('#')、その周りを囲う部分が白('.')になっているものをTaK Codeと呼ぶ。 縦Nマス、横Mマスのグリッドがある。そこに含まれる9x9マスの領…

Pythonのソート自由自在 ~初歩から関数を用いた複雑なソートまで~ [reverse, key, lambda, cmp_to_key]

当記事は、ソートを自由自在に使いこなすための方法を、具体例を多く用いて解説した記事です。 外部ライブラリ(NumPy, pandasなど)に関しては扱っていませんのでご了承ください。 目次 sort()とsorted() 引数reverseを指定する 引数keyに関数を渡す lambda式…

ABC311 C - Find it! (Diff:448 茶) の解説 [AtCoder][Python]

問題へのリンク https://atcoder.jp/contests/abc311/tasks/abc311_c 問題概要 N頂点N辺の有向グラフがあり、i番目の頂点からはA[i]に伸びている。 この時、有向閉路を1つ求めよ。 入力例1 N = 7, A = [6, 7, 2, 1, 3, 4, 5] 画像:https://img.atcoder.jp/ab…

ABC307 D - Mismatched Parentheses (Diff:666 茶)の解説 [AtCoder][Python][C++]

問題へのリンク https://atcoder.jp/contests/abc307/tasks/abc307_d 問題概要 アルファベットと"("、")"から成るN文字の文字列Sが与えられる。 先頭が"("、最後が")"で囲まれ、中に"("、")"を含まない文字列を削除する動作を繰り返す。 例(入力例1) N=8, S=…