[Python] ABC009 C
問題 C - 辞書式順序ふたたび ヒントと解説 (p.32-) が分かりやすいです。 「同じ長さの文字列s, t が与えられたとき、t を並び替えて、s との不一致の数を最小とする」ことを考えるには、結局、「それぞれの文字の数の差」を考えるだけで良い。 ...
問題 C - 辞書式順序ふたたび ヒントと解説 (p.32-) が分かりやすいです。 「同じ長さの文字列s, t が与えられたとき、t を並び替えて、s との不一致の数を最小とする」ことを考えるには、結局、「それぞれの文字の数の差」を考えるだけで良い。 ...
問題 B - 心配性な富豪、ファミリーレストランに行く。 重複を取り除きソートする set() で重複を取り除き、list() でリスト化し、sorted() でソートする。 答え N = int(input()) A = A_sorted =...
問題 A - 引越し作業 切り上げ処理 math.ceil(x) 商と余りを一度に取得 divmod(a, b) 回答 N = int(input()) nums_thereback = N // 2 + N % 2 print...
問題 D - 金塊ゲーム 回答 80点回答 分割統治法 再帰 分割された区域に再帰的に関数を適用することで問題を解きます。 def rec_get_golds(x_min, y_min, x_max, y_max): ''' ...
問題 C - コイン 解説を読めば理解はできるけど、自分は思いつけるようになるのだろうか? 順列 99点回答 コインの順列に対して全探索を行います。 Pythonでは、itertools.permutations(iterable,r=No...
問題 B - 投票 回答 名前を辞書で管理し、ソートします。 N = int(input()) dict_names = dict() for _ in range(N): name = input() if name not in d...
問題 A - アルバム 回答 S, T = map(int, input().split()) nums_pics = T - S + 1 print(nums_pics)
ABC007 Dを桁DPを使って解きます。 桁DP/Digit DP 「n以下の整数の処理」を考えるときに、 大きい桁から一桁ずつ数を見ていき、結果を代入するDP配列に、nより小さいことが確定しているかどうかのフラグを含めることで状態を管理する動的計画法で...
問題 C - 幅優先探索 幅優先探索(はばゆうせんたんさく、英: breadth first search)はグラフ理論(Graph theory)において木構造(tree structure)やグラフ(graph)の探索に用いられるアルゴリズム。アルゴリズムは根...
問題 B - 辞書式順序 入力例/出力例と同じ値になるようにしてみる。 組み込み関数の chr(i) と ord(c) を使う。 回答 A = input() lst_a = list(A) if len(lst_a) >=2: pr...