競プロ日和

競技プログラミングを楽しむ

2019-02-18から1日間の記事一覧

ABC118 D

問題 動的計画法を使う。 dpn配列に文字列の長さ、dp配列に文字列を格納する。配列の長さはマッチ棒の個数。 dpnを0から順番に調べ、初期値(-1)ではなく、追加したマッチ棒の個数の地点の長さが ①追加したい個所と同じ ・追加したい個所に、追加したい個所と…

ABC118 C

問題 最大公約数を求めればよい。 ただし、AtCoderのpython3の実行環境は3.4.3のため、math.gcdが使えない。 そのため、fractions.gcdを使う。 from fractions import gcd n = int(input()) A = list(map(int, input().split())) ans = A[0] for a in A[1:]:…

ABC118 B

問題 1人の場合は、その人が答えた食べ物の種類数が答え。 2人以上の場合は、1人目からN人目までの好きな食べ物の&をとればよい。 n, m = map(int, input().split()) ans = set(input().split()[1:]) for _ in range(n - 1): ans &= set(input().split()[1:])…

ABC118 A

問題 bをaで割り切れたら、a + b を出力。 そうでなければ、b - a を出力 a, b = map(int, input().split()) print(a + b if b % a == 0 else b - a)