いむらや競プロ雑記

キーワード:競プロ、育児、石川県

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

ARC143 A - Three Integers

atcoder.jp 解説にあるような「どれか1つに1を加算する」(その後全部を1引く)操作を読み替えられた場合、上のコードのような感じで解ける。 なお、ABCの値はA[0]A[1]A[2]のリストとし、ソートしてA[0]が大きい前提としている。 A[1]とA[2]にA[0]を合わせる…

ABC257 E - Addition and Multiplication 2

atcoder.jp def resolve(): N = int(input()) C = list(map(int, input().split())) Min = min(C) diff = [ [1, C[0]], [2, C[1]], [3, C[2]], [4, C[3]], [5, C[4]], [6, C[5]], [7, C[6]], [8, C[7]], [9, C[8]], ] for i in range(9): diff[i][1] -= Min …

ABC251 D - At Most 3 (Contestant ver.)

atcoder.jp 解法は解説を見れば明らかなので略。 色々実験したけど、優位に速度が変わらないような気がした...(誤差の範囲?) 他のpython勢の提出も、17~19msあたりが最速に見えるので、これ以上は言語の限界だろうか 入力は受ける、答えとなるリストをra…

ABC251 E - Tahakashi and Animals

atcoder.jp iを1~Nとして、動物iを押さえたときに、用いた行動が、0:iなのか、1:i-1なのか、の2状態を持ち、それぞれの最小コストを更新するようなDPを持つ(苦手なので日本語が微妙…) ここで、動物2に対して行動2(i)、動物3に対して行動2(i-1)のような…

ABC250 E - Prefix Equality

atcoder.jp 先頭xおよびy要素のそれぞれの集合を事前に作っておいて、一致確認できれば簡単だけど、それをやるとTLEする。ある集合の状態をもっと軽量な値として管理したらよさそうで、それをハッシュ的にやる。 初登場の要素が来たら、乱数を生成して、ある…

ABC249 D - Index Trio

atcoder.jp カウント対象が成立するためには、左辺が割り切れる必要がある(Aのそれぞれが整数のため)ことから、iについて全探索するとした場合に、Aiの約数を列挙しておくとよさそう。さらに、AjとAk相当は、まじめに探索しなくても、個数から引いてこれそ…

ABC246 E - Bishop 2

atcoder.jp 基本的にはゴリゴリ探索し、枝狩り(というのか?)する。何法っていうのかよくわからない。 ただし、本番中には枝狩り不足で通せず。ソース整理してコメントも残したので、置いておきます。 def resolve(): N = int(input()) Ax, Ay = map(int, …