Paiza問題集
Pythonで回答
データセットメニュー/動的配列
Step01 ランダムアクセス
Step01
"""
ランダムアクセス
https://paiza.jp/works/mondai/data_structure/data_structure__array_step1
"""
# 数字を受け取る
N, M = map(int, input().split())
# 数字列を受け取る
A = [int(x) for x in input().split()]
# 表示する
print(A[M-1])
Step02 複数回のランダムアクセス
Step02
"""
複数回のランダムアクセス
https://paiza.jp/works/mondai/data_structure/data_structure__array_step2
"""
# 数字を受け取る
N = int(input())
# 配列に数字を入れる
A = [int(x) for x in input().split()]
# 数字を受け取る
M = int(input())
# 配列に数字を入れる
B = [int(x) for x in input().split()]
# 数字表示する
for i in range(M):
print(A[B[i]-1])
Step03 最大値と最小値
Step03
"""
最大値と最小値
https://paiza.jp/works/mondai/data_structure/data_structure__array_step3
"""
# 数字を受け取る
li = list(map(int, input().split()))
# 数字を昇順に並び変える
li.sort()
# 差を求めて表示する
print(li[2]-li[0])
Final問題 動的配列
Final問題
"""
動的配列
https://paiza.jp/works/mondai/data_structure/data_structure__array_boss
プログラムの動作
・ 0 x : Aの末尾にxを追加する
・ 1 : Aの末尾を削除する
・ 2 : Aを半角スペース区切りで1行に出力する
"""
# 数字を受け取る
N, Q = map(int, (input().split()))
# 配列に数字を入れる
A = list(map(int, input().split()))
for i in range(Q):
# 数列を受け取る
query = list(map(int, (input().split())))
# 0,1,2を判断する
cmd = query[0]
if cmd == 0:
# 配列の末尾に追加
A.append(query[1])
elif cmd == 1:
# 配列の末尾を削除
A.pop()
else:
# 配列を表示
print(" ".join(map(str, A)))