結果発表
kurenai3110さん総ターン数51,972
さはらさん総ターン数52,924
c7c7さん総ターン数53,640
nagissさん総ターン数53,833
yoshnaryさん総ターン数53,922
最終ランキング TOP 30
順位 | ニックネーム | 区分 | 応募日時 | 総ターン数 | 時間(秒) |
---|---|---|---|---|---|
1 | kurenai3110 | 学生 | 2019-10-13 01:10:26 | 51,972 | 56.1718 |
2 | さはら | 学生 | 2019-10-15 10:09:38 | 52,924 | 51.5937 |
3 | c7c7 | 学生 | 2019-10-15 11:29:40 | 53,640 | 59.5937 |
4 | nagiss | 学生 | 2019-10-15 11:56:58 | 53,833 | 58.9296 |
5 | yoshnary | 学生 | 2019-10-15 11:10:00 | 53,922 | 54.4218 |
6 | phocom | 学生 | 2019-10-15 01:40:31 | 54,641 | 57.5546 |
7 | shamal | 学生 | 2019-10-15 11:59:04 | 54,936 | 58.1250 |
8 | ishimura | ハル研 | 2019-10-11 21:55:47 | 55,220 | 55.4921 |
9 | Ark | 学生 | 2019-10-15 11:55:06 | 55,297 | 59.8906 |
10 | daisyo | 学生 | 2019-10-15 08:59:48 | 55,314 | 59.9140 |
11 | nari | 学生 | 2019-10-15 11:56:24 | 55,402 | 58.6718 |
12 | しゃっふりゅー | 学生 | 2019-10-15 09:41:37 | 55,431 | 58.5937 |
13 | やむなく | 学生 | 2019-10-15 11:56:36 | 55,571 | 56.1640 |
14 | あそう | 学生 | 2019-10-15 11:37:04 | 55,577 | 59.5156 |
15 | takumi152 | 学生 | 2019-10-15 09:58:48 | 56,023 | 59.6328 |
16 | NOSS | 学生 | 2019-10-15 11:44:54 | 57,109 | 54.2578 |
17 | Nyaan | 学生 | 2019-10-10 00:36:20 | 57,360 | 59.4375 |
18 | sbite | 学生 | 2019-10-15 07:44:07 | 57,473 | 59.5000 |
19 | じろう | 学生 | 2019-10-15 08:40:35 | 58,235 | 14.6640 |
20 | masayuki | ハル研 | 2019-10-15 02:52:18 | 58,364 | 51.3046 |
21 | ☆亀色魔法少女物理好き★ | 学生 | 2019-10-15 04:00:13 | 58,578 | 59.9062 |
22 | Tatamo | 学生 | 2019-10-15 11:58:53 | 58,776 | 36.9921 |
23 | kotamanegi | 学生 | 2019-10-12 12:21:33 | 58,899 | 58.4453 |
24 | autumn_eel | 学生 | 2019-10-14 20:41:03 | 59,069 | 58.8515 |
25 | arimatsu | ハル研 | 2019-10-15 09:03:03 | 59,360 | 58.4218 |
26 | MiuMiu | 学生 | 2019-10-15 01:11:49 | 59,419 | 56.0234 |
27 | いの | 学生 | 2019-10-15 11:49:36 | 59,640 | 53.3359 |
28 | tagoya | ハル研 | 2019-10-12 14:56:35 | 59,691 | 59.1875 |
29 | tada | 学生 | 2019-10-15 11:09:44 | 60,194 | 56.8437 |
30 | atono | ハル研 | 2019-10-15 10:21:49 | 61,154 | 59.4531 |
チャレンジスコア賞
全応募者のうち48%の方が、チャレンジスコア「77,777」を達成されました。
厳正な抽選の結果、以下の5名の達成者がチャレンジスコア賞に決定しました。
- くめさんさん
- tomaさん
- nihilさん
- はいさいさん
- tkhtさん
実行委員会による総評
問題の特徴
今回の問題は、複数のカメと複数のエサがあり、取る順番や役割分担を効率化する問題でした。
問題の制作過程では、カメが別のカメの背中に乗り降りするのにも1ターンかかる(乗られるカメは動いてはいけない)など、複雑なルールの問題案も検討しましたが、最終的には、同じ場所にカメが集まるだけで自動的に背中に乗れて高い場所にあるエサが取れるというシンプルなルールに落ち着きました。
また、当初はエサの高さを生成する乱数は一様乱数のみにする方向で検討していましたが、それだとカメがあまり散らばらずにほぼ集団で行動してしまうため、解法のバリエーションを増やすために、低いエサが多いステージ、中くらいのステージを追加してみました。
シンプルですが、考えることが多く、奥が深い問題になったと思います。
作品の傾向
この問題では、どのカメがエサを食べるか、そしてどういう順番で食べるかと、考えることが多くあります。
そこで、まず全体での食べる順番を考え、その上で担当するカメを割り当てるという方が多かったようです。
食べる順番の決め方の1つとして、あらかじめ決められたコースの中から、もっとも良かったものを採用するという方法がありました。
そして、そのコースも、左から右、右から左のほか、時計回り、反時計回り、クネクネとS字を描くように食べるなど、ユニークな手法が見られました。
ほかには、高いエサを食べる順番は巡回セールスマン問題を解いて決めて、低いエサを途中に挟むような手法も見られました。
どのカメが食べるか
ここは単純に、各カメの現在位置と時刻から、早く次のエサに到達できるカメを割り当てるというシンプルな手法が多かったようです。
先ほどは分かりやすく「食べる順番」としましたが、ここでは、「食べるカメを決める順番」とします。この違いについて詳しく説明します。

たとえば、上の図のようなケースで、食べるカメを決める順番がA→B→Cのとき、最初にAを6匹で食べ、そのうちの3匹がBに向かいます。そして、Cを食べるカメを決めるのですが、最も早く到達できるのは、Aに残っている3匹なので、この3匹がCに向かいます。
これを時系列で考えると、Aを6匹で食べた後、Cを3匹で食べ、残りの3匹も同時にAを出発するのですが、実際にはCより後でBを食べるというふうになります。
このように、食べるカメを決める順番と、実際に食べる順番は異なることがあります。

上の図のようなケースでは、食べるカメを決める順番をA→B→C→D→Eとすると、Aを6匹で食べ、そのうちの3匹がBを、残りの3匹がCを食べるようになってしまいます。そして、Bを食べた3匹がDを、Cを食べた3匹がEを食べるようになるのですが、あまり良い戦略とはいえません。
おそらくこの図を見た多くの方は、Aを6匹で食べた後、左右二手に分かれて、左側担当になった3匹はB、Cを、右側担当になった3匹はD、Eを食べるのが良いと考えるのではないでしょうか? もちろん、それが正解です。
ここで、食べるカメを決める順番を、A→B→D→C→Eとしてみましょう。すると、Aを6匹で食べ、そのうちの3匹がBを、残りの3匹がDを食べます。そして、Bを食べた3匹がCを、Dを食べた3匹がEを食べるようになり、期待通りになります。
このように、食べるカメを決める順番をうまく設定すると、食べるカメの決め方はシンプルでも、それなりにうまく分業するようになるため、とにかく食べるカメを決める順番をいろいろ試してみるという方が多かったようです。
そして、ここでの適切な食べるカメを決める順番は、もはや巡回セールスマン問題を解いて求めたようなものとは違います。ビームサーチや焼きなまし法などでこれを改善する方が多かったようです。
評価環境
評価環境で使われた乱数は、
randomSeedX = 0x0054660a;
randomSeedY = 0x815c8c59;
randomSeedZ = 0x462da825;
randomSeedW = 0x04006e2c;
randomSpinX = 0x81b;
randomSpinY = 0xcf;
でした。
まとめ
今年のプロコンは、シンプルながらも、複数のカメを動かさないといけないため考えることが多く、難しい問題だったと思います。
開始当初は応募数も少なく穏やかな滑り出しでしたが、締め切りが近づくにつれて応募数が増えてきました。
アンケートからは、初参加の方から常連の方まで各々のスキルに応じて取り組んでいただけたことが窺え、実行委員会としては大変うれしい限りでした。
最後になりますが、プロコン2019はお楽しみいただけましたでしょうか。
このようにプロコンが盛り上がりましたのは参加者のみなさんのおかげと、実行委員会一同、感謝しております。熱心にご応募いただき、本当にありがとうございました。