基本情報トップに戻る
練習問題難易度: 標準2019年度

基本情報技術者 過去問練習問題 第8問

問題

A、C、K、S、T の順に文字が入力される。スタックを利用して、S、T、A、C、K という順に文字を出力するために、最小限必要となるスタックは何個か。ここで、どのスタックにおいてもポップ操作が実行されたときには必ず文字を出力する。また、スタック間の文字の移動は行わない。

選択肢

  1. 11
  2. 22
  3. 33
  4. 44

正解

3. 3

詳しい解説を見る

解説

先に入力される A・C・K は、出力では最後に A・C・K の順(入力と同じ順)で出さなければなりません。スタックは後入れ先出し(LIFO)なので、A・C・K を一つのスタックに積むと取り出しは K・C・A の逆順になり、要求順を作れません。よって A・C・K はそれぞれ別のスタックに保持する必要があり、最低 3 個のスタックが要ります。後から入力される S・T はこれら3つのスタックの空きを使って即座に出力でき、追加のスタックは不要です。したがって最小は 3 個でウが正解です。(出典: 令和元年度 秋期 基本情報技術者試験 午前 問8)

一問一答

科目A 180問+科目B 60問

練習問題の関連問題

この調子で演習を続けよう

スキマ資格では基本情報の全2398問を分野別・難易度別に体系的に学習できます。基本情報技術者は科目A(広く浅く)と科目B(プログラミング・アルゴリズム)の両輪での対策が必要です。