平成30年春期  プログラミング  設問2

うわーさん  
(No.1)
https://www.ap-siken.com/s/kakomon/30_haru/pm03.html

設問2のウに入る字句について

解答には「iがm×nと等しい」とあるのですが、「board[v][h]がm×nと等しい」では間違いになりますか?
その処理の直前で代入しているので同じ値を指すと思うのですが…
2023.09.19 12:19
ochx75さん 
(No.2)
はじめまして。

前提として、午後問題については別解があっても公開されることが珍しいようですので推測になります。

投稿主さんのおっしゃる通り、空欄「ウ」よりも前でboard[v][h]にiを代入しているため、実際に動作させた結果としては問題ないと思われます。
しかし、iとboard[v][h]とではそれぞれのメモリへのアクセスにかかる時間がiのほうが短いため、IPAの解答としてはiを採用しているのだと解釈しております。
2023.09.19 15:20
boyonboyonさん 
AP シルバーマイスター
(No.3)
どちらも、同じ値になるので、スレ主様の解答でも良いと思いますが、

>再帰関数 search(移動順序,行,列)
>行と列で指定されるマス(以下,現在のマスという)が盤面の範囲外,又は既に通過したマスであった場合,何もせずに再帰関数 search の呼出し元へ戻る。
>(i)以外の場合,現在のマスに,移動順序を記録する。
>(ⅱ-1)
>記録した移動順序がM×Nに等しい場合,その経路を解の一つとして出力する。
の所に、プログラムを当てはめると

移動順序=i
現在のマス=board[v][h]
になると思います。
これを考えると
「移動順序がM×Nに等しい場合」は、
i=MxNにしておいた方が、無難かと思います。
2023.09.19 18:31
うわーさん  
(No.4)
回答ありがとうございます。

答えとしてはそこまで離れていないと分かって良かったです。次からは入ってる値だけでなくその変数について色々考えながら解いてみようと思います!
2023.09.19 22:37

返信投稿用フォーム

スパム防止のためにスレッド作成日から30日経過したスレッドへの書込みはできません。

その他のスレッド


Pagetop