【スタック・キューメニュー】> FINAL問題 キュー実装編 step 2 (paizaランク C 相当) [難易度: 1284 ±30]
※リンク先へ移動するためには[paiza]へのログインが必要です。
Q 個のクエリが与えられます。空の配列 A を用意したあと、 Q 個のクエリに応じて以下の 2 種類の処理をしてください。
・ PUSH X: 配列 A の末尾に 文字 X を追加
・ POP: 配列 A の先頭にある要素を出力し、削除
各クエリの処理が終わったあと、配列 A の各要素の値を半角スペース区切りで出力してください。
入力値(例)
4
1 a
2
1 b
1 a
出力値(例)
a
a
b
b a
解答例
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
<?php $n = trim(fgets(STDIN)); $array = []; for($i = 0; $i < $n; $i++) { $c = trim(fgets(STDIN)); if(strpos($c, 1) !== FALSE) { list($push, $x) = explode(" ", $c); $array[] = $x; } elseif($c == 2) { $p = array_shift($array); echo $p. "\n"; } $q = implode(" ", $array); echo $q. "\n"; } ?> |