プログラミングコンテストに向けて練習していて、過去に答えることができなかったいくつかの難しい問題に取り組んでいます。それらの 1 つは王の迷路でした。-50<x<50
基本的に、 「トークン」を表す数値の NxN 配列が与えられます。位置 1,1 から開始し (配列インデックスでは 0,0 であると仮定します)、N,N で終了する必要があります。訪問したセルでトークンを取得する必要があり、トークンのないセル (0 で表される) を踏むことはできません。0 に囲まれると負けです。迷路に解決策がない場合は、「解決策なし」と出力します。それ以外の場合は、拾ったトークンを合計して得られる最大の数を出力します。
この問題を解決する方法がわかりません。それを解くための迷路アルゴリズムを書けると思ったのですが、それには時間がかかります。プログラミング コンテストでは、複数の問題を解くのに 2 時間しか与えられません。見落としているパターンがあると思います。これにどのようにアプローチすればよいか知っている人はいますか?
また、この問題は高校生向けであることを言及しておくと役立つかもしれません。