令和7年度春期 応用情報技術者試験 午前 問5

分野:アルゴリズムとプログラミング|実際に出題されたIPA過去問題

A,B,Cの順序で入力されるデータがある。各データについてスタックへの挿入と取出しを1回ずつ行うことができる場合,データの出力順序は何通りあるか。

問題の図表(IPA公式問題冊子より引用)
図表:IPA公式問題冊子より
  1.  3
  2.  4
  3.  5
  4.  6
解答・解説を見る

正解:ウ

AI解説

スタックを用いて要素を並べ替えるとき、n個の要素に対して実現可能な出力順列の総数はカタラン数Cnで与えられる。n=3のときC3=5であり、A,B,Cの3データを1回ずつ挿入・取出しする場合の出力順序は5通りとなる。 ア: 3通りは、実現可能な出力順序を一部しか数え上げていない過小な値である。 イ: 4通りも同様に、数え漏れがある過小な値である。 ウ: 正しい。カタラン数C3=5が、スタックを介して得られる出力順列の総数である。 エ: 6通りは、スタックの制約を考慮せずに単純に3個の要素の順列総数(3!=6)を答えてしまった誤答であり、スタックの後入れ先出し制約により実現不可能な順序が含まれてしまう。 💡 スタックによる並べ替え可能な順列数はカタラン数(1,2,5,14,42,…)として知られ、要素数の階乗より少なくなる点に注意する。

出典:令和7年度 春期 応用情報技術者試験 午前 問5 / 独立行政法人情報処理推進機構(IPA)
※Web掲載用に表記を一部変更しています。図表はIPA公式問題冊子から引用しています。著作権はIPAに帰属します。
📱 演習アプリで解く(無料・登録不要・2,640問収録)

「アルゴリズムとプログラミング」分野の攻略ポイント

データ構造・アルゴリズム・探索と整列・計算量・擬似言語・プログラム言語・データ記述言語が対象です。擬似言語のトレースは時間はかかるものの、落ち着いて表を書けば必ず正解にたどり着く「確実に取れる」問題です。

アルゴリズムとプログラミングの攻略ポイントをすべて見る(要点6項目・ひっかけ3項目)→

同じ分野(アルゴリズムとプログラミング)の過去問