プロが教える店舗&オフィスのセキュリティ対策術

あるゲームでは, 現実世界に多くの拠点となる場所が作られ, そこに近づくと, 様々なアイテ
ムを得ることができる. 一定時間以内に異なる n 個の場所に近づくと, n 個目の場所で, 多
くのアイテムを得ることができる. この判定をおこなうためのデータ構造とアルゴリズムを
教えてください.

A 回答 (2件)

アルゴリズムも何も...


近づいた拠点の場所と時刻を記憶しておくだけじゃない。
ある拠点に近づいたら、過去に近づいた拠点かどうか調べて、
新規なら n個になったかどうか調べ、アイテム付与などを行う。
そのとき、一定時間が過ぎた拠点はキューからはずしておく。
再訪であれば、近づいた時刻を更新する。
    • good
    • 0

(1) 仮に、そのゲームが現実世界で行うもので、自分が審判だったとしたら、判定をどうやってやる?たとえば、プレイヤーが10人いて、一定時間というのが100日間で、n=300だったら? 当然、メモを取ってなきゃ絶対わかんなくなるでしょう。

ではいつ何をメモする必要がある?そのメモを見てどうやって判定をやる?

ということを考えればいいんです。(問題が求めているのはここまでだが)さらに「アルゴリムズとデータ構造」の勉強としては

(2) メモの書き方がうまいと、メモを更新したり判定したりしやすくなる(メモリ消費や計算量が小さくなる)でしょう。ではどう整理しどう更新していけば便利だ?

ということも考えなくちゃ。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!