[アルゴリズム]伯俊10828号スタック(Python)
白駿#10828
問題のショートカット
質問する
整数を格納するスタックを実装し、入力としてのコマンドを処理するプログラムを作成します.
命令は全部で5種類ある.
push X:整数Xをスタックに入れる演算.
pop:スタックの一番上の整数を除去し、出力します.スタックに整数がない場合は、-1が出力されます.
size:スタック内の整数の個数を出力します.
空:スタックが空の場合、1または0が出力されます.
top:スタックの一番上の整数を出力します.スタックに整数がない場合は、-1が出力されます.
I/Oルール
1.入力
2.出力
質問へのアクセス
この問題はpush,pop,size,empty,topで解くことができる.
入力値の最初に総入力個数が現れ、入力個数はfor文を用いて順次処理される.そしてif文で値を計算して個々の出力を実現することで終了~!
問題解決(Python)
import sys
T = int(sys.stdin.readline())
stack = []
for i in range(T):
word = sys.stdin.readline().split(" ")
order = word[0]
if order == "push":
value = word[1]
stack.append[value]
elif order == "pop":
if len(stack) == 0:
print(-1)
else:
print(stack.pop())
elif order == "size":
print(len(stack))
elif order == "empty":
if len(stack) == 0:
print(-1)
else:
print(0)
elif order == "top":
if len(stack) == 0:
print(-1)
else:
print(stack(-1))
Reference
この問題について([アルゴリズム]伯俊10828号スタック(Python)), 我々は、より多くの情報をここで見つけました https://velog.io/@goplanit/Algorithm-백준-10828번-스택파이썬テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol