AtCoder

AtCoder

AtCoder Beginner Contest 261の感想

リアルタイムで参加した。 A - Intersection 両端を求めて差を取るだけ。 距離を求めるので、計算結果がマイナスになったら0し忘れないようにする。 l1, r1, l2, r2 = map(int, input().split(...
AtCoder

AtCoder Beginner Contest 240の感想

リアルタイムで参加しました。 A - Edge Checker 線で結ばれていれば隣り合っているはずなので、差が1になる組み合わせが答え。 そのまま差を取ると両端の場合がコーナーケースになるので、場合分けを追加。 a, b = map(in...
AtCoder

再帰を使わないオイラーツアーをスタックで実装する思考過程

AtCoderをしていた時、解法でオイラーツアーという単語が出てきた。 初めて聞いた単語だったため、以下のサイトを参考に実装して思考過程を整理してみた。 深さ優先探索(DFS)を行い、訪れた頂点の順番と時刻を記録するアルゴリズム。 オイラー...
AtCoder

AtCoder Beginner Contest 237の感想

A - Not Overflow PythonのintはC++のlong longと違って上限がないので、そのまま実装。 n = int(input()) if -2 ** 31 <= n < 2 ** 31: print('Yes') e...
AtCoder

AtCoder Beginner Contest 238の感想

A - Exponential or Quadratic 問題文そのまま実装。 n = int(input()) ans = 2 ** n > n ** 2 print('Yes' if ans else 'No') B - Pizza 手...
AtCoder

AtCoder Beginner Contest 234の感想

A - Weird Function 関数を定義し、カッコの場所に注意しながら実装。 t = int(input()) def func(x): return x ** 2 + 2 * x + 3 ans = func(func(func(...
AtCoder

AtCoder Beginner Contest 197の感想

過去問埋め。 A - Rotate 文字列はリストのようにインデックスを使ってn文字目にアクセス出来ることを利用。 s = input() ans = s + s print(ans) B - Visibility スタート地点から全探索。...
AtCoder

AtCoder Beginner Contest 207の感想

ABC207に参加した。 A - Repression 総和から最小値を引く。 abc = list(map(int, input().split())) ans = sum(abc) - min(abc) print(ans) B - H...
AtCoder

AtCoder Beginner Contest 188の感想

ABC188に参加した。 A - Three-Point Shot やるだけ。 x, y = map(int, input().split()) ans = min(x, y) + 3 > max(x, y) print('Yes') if...
AtCoder

AtCoder Beginner Contest 187の感想

ABC187に参加した。 A - Large Digits やるだけ。 a, b = input().split() a = sum(map(int, list(a))) b = sum(map(int, list(b))) ans = m...