固定サイズのスタック
あなたはプログラミング教育プラットフォームの開発チームの一員です。例外処理とデータ構造の作成に関するレッスンとして、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