• ベストアンサー

基本情報の平成15年秋期の問題について

基本情報の平成15年秋期の問題について http://情報処理試験.jp/FE15b-pm/t06.html 上記の問題なのですが、[b]の回答がなぜオになるのかわかりません。 for (eidx = [ b ]; cidx < eidx; eidx--) が for (eidx = [ b ]; cidx <= eidx; eidx--) ならいいと思うのですが・・・ 助言お願いします!

質問者が選んだベストアンサー

  • ベストアンサー
  • kmee
  • ベストアンサー率55% (1857/3366)
回答No.1

そこの不等号さえそうなっていれば、オでなっとく、ということですね。 ということは、 空席であるridx,cidxから横にnumber人分の席を確保するには cidx,cidx+1,.....,cidx+number-1 の計number個の席を確認すればよい、というのはおわかりですね。 このループに入るための条件をよく見てください。 > if (status[ridx][cidx] == ' ') { と、cidxはすでに空席だということが明白です。 なので、調べるのは cidx+1,.....,cidx+number-1 だけで、eidx==cidxはチェック不要ということです。

hibria
質問者

お礼

回答ありがとうございました。とてもわかりやすい解説ですぐ理解できました!なぞが解けてすっきりですw

すると、全ての回答が全文表示されます。