固定サイズのスタック
あなたはプログラミング教育プラットフォームの開発チームの一員です。例外処理とデータ構造の作成に関するレッスンとして、Pythonでスタッククラスを実装するよう依頼されました。このスタックは固定サイズで、以下の3つの操作をサポートします。
push(item)
: アイテムをスタックの一番上に追加する。pop()
: スタックの一番上のアイテムを取り出して返す。peek()
: スタックの一番上のアイテムを削除せずに参照する。
ただし、あなたのスタッククラスは次の制約を満たす必要があります。
スタックが満杯の状態で
push(item)
しようとした場合、StackOverflowError
例外を発生させる。スタックが空の状態で
pop()
しようとした場合、StackEmptyError
例外を発生させる。
クラスの適切な継承抽象化を行うため、StackOverflowError
とStackEmptyError
はException
を継承し、__init__
メソッドで引数を受け取らないようにします。
入力 | 出力 |
---|---|
| StackOverflowError: The stack is full |
Constraints
Time limit: 2 seconds
Memory limit: 512 MB
Output limit: 1 MB