【AtCoder】ABC340解説(Python)

鹿島建設プログラミングコンテスト2024(AtCoder Beginner Contest 340)の解説記事です。

目次

ABC340 A – Arithmetic Progression

問題

問題文の要約は以下の通りです。

問題の要約

初項が \(A\) 、末項が \(B\) 、公差が \(D\) であるような等差数列を出力せよ。

制約

・\(1 \le A \le B \le 100\)
・\(1 \le D \le 100\)
・初項が \(A\) 、末項が \(B\) 、公差が \(D\) であるような等差数列が存在する
・入力は全て整数

入力

\(A\) \(B\) \(D\)

出力

初項が \(A\) 、末項が \(B\) 、公差が \(D\) であるような等差数列の項を順に空白区切りで出力せよ。

解説

while文を使用する。

解説

\(A\), \(B\), \(D\) をint型として受け取ります。

# 入力
A,B,D=map(int,input().split())

\(A \lt B\) の間は公差を足して出力します。

# A<Bの間は公差を足して出力
while A<B:
  print(A,end=' ')
  A+=D

最後に末項を出力します。

# 最後に末項を出力
print(B)

解答

# 入力
A,B,D=map(int,input().split())

# A<Bの間は公差を足して出力
while A<B:
  print(A,end=' ')
  A+=D
# 最後に末項を出力
print(B)

ABC340 B – Append

問題

解説

リストを使用してクエリを処理する。

解説

次に入力 \(Q\) をint型として受け取ります。

# 入力
Q=int(input())

空の数列をlistで用意します。

# 数列
A=[]

\(Q\) 回クエリを処理します。
リストの末尾に追加するにはappend、後ろからk番目の値を求めるにはA[-k]とします。

# Q回クエリを処理する
for _ in range(Q):
  t,k=map(int, input().split())
  # 末尾にkを追加する
  if t==1:
    A.append(k)
  # 後ろからk番目の値を求める
  else:
    print(A[-k])

解答

# 入力
Q=int(input())
# 数列
A=[]

# Q回クエリを処理する
for _ in range(Q):
  t,k=map(int, input().split())
  # 末尾にkを追加する
  if t==1:
    A.append(k)
  # 後ろからk番目の値を求める
  else:
    print(A[-k])
よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次