paiza スタック・キュー実装編 step 2 Python解説

スポンサーリンク

スタック・キュー実装編 step 2

Q 個のクエリが与えられます。空の配列 A を用意したあと、 Q 個のクエリを順に処理してください。
各クエリは、以下の 2 つのいずれかです。
PUSH X: 配列 A の末尾に X を追加
STAY: 何もしない
最初の数値が 1 のとき PUSH 、 2 のとき STAY を表します。 PUSH のときは続いて数値 X が与えられます。
すべてのクエリの処理が終わったあと、配列 A の要素数 N と値をそれぞれ改行区切りで出力してください。

paiza「スタック・キュー実装編 step 2」

クエリを受け取ったら、クエリの数値で場合分けをします。数値が1だったら、数値Xを配列Aに加え、数値が2の場合はSTAYなので処理を行いません。

q = int(input())
a = []

for _ in range(q):
    query = input().split()
    if query[0] == "1":
        a.append(query[1])
    else:
        pass
    
print(len(a))
for i in a:
    print(i)

問題文の通りに実装すると上記のようなコードになります。空の配列aを用意し、for文でクエリを受け取っていきます。クエリの数値で場合分けをし、数値が1の場合は数値を配列aに追加していきます。最後に配列aの要素数と要素を出力して完了です。