コンテスト終了後の9月25日(水)19時より、MN-Core Challengeのコンテスト振り返りなどを行う懇親会を開催する予定です。
大手町のオフィスでのオフライン参加に加え、配信も予定しております。ぜひご参加ください。
後日に参加のための Connpass ページを公開します。
現在、テストケース依存解が少々確認されておりますが、正答として扱います。
これ以降テストケースを変更してのリジャッジは行いません。
なお、現在の の解法はテストケースに依存していません。
PE命令によるL1BMおよびL2BMへのアクセスで、ラップアラウンド動作(アドレスがメモリサイズを超える場合にアドレス0側に戻る動作)せず意図しないアドレスにアクセスすることがわかりました。
仕様としてはラップアラウンドするのが正しく、将来的にはエミュレータを修正予定ですが、修正版のエミュレータが提供されるまでの間は、お手数ですが利用するL1BMやL2BMのアドレスを全体的にずらすなどして、ラップアラウンド動作が発生しないよう対処していただくようお願いいたします。
なお、L1BM全域を利用しているなどでそのような対処が難しい場合はご相談ください。
行列演算の図まとめページからのリンク先を一部修正しました。
ソフトウェア開発者マニュアルを更新しました。
日付が9/6になっているものが最新版となります。
更新内容は以下のとおりです。
floor
命令の説明の更新d{m,v}{fma,mul}
の使用例の追加{f,h}v{add,passa}
の説明、L1BM 命令式のリスト、ブロックフロート化のタイポ修正また、問題ページに説明を追記しました。詳細は以下のとおりです。
dvmul(u|d)
の解説を追加しました。参加者より、Transposeにおいて入出力条件を満たさないコードが一部通りやすい状況である点をご指摘いただきました。
これを利用した入力依存解が入力非依存解よりも短くなることはないと考えておりますが、参加者の方々が入力依存解を心配して取り組むのは望ましくないため、テストケースの変更を行い、リジャッジを実施しました。
リジャッジの結果、16行以上の一部提出の正誤判定が変化しました。
お手数ですが各自 Submissions よりリジャッジ結果をご確認いただければと思います。
quit
命令が使用できるようになりました。ソフトウェア開発者マニュアルを更新しました。
日付が8/29になっているものが最新版となります。
更新内容はp60-p61「3.6.1.6 m - LM0 (ベースアドレスレジスタ書き込みを除く)」のアドレス計算式にあった誤りの修正です。
count upの問題文にMV命令・wait命令について追記しました。
本コンテストではwait命令なしで問題を解くことができます。
練習問題のヒントと想定解を各練習問題ページの下部に追加しました。
本番開始1時間前の 8/28 12:00(JST) 頃に各練習問題ページの下部に模範解答を掲載いたします。
アセンブラの軽微なバグを修正しました。
お手数をおかけしますが、ローカル環境を構築されている方は judge.zip の再ダウンロードをお願いします。
なお、これまでの提出には影響はなく、また練習問題に挑戦する際に大きな影響のある修正ではありません。
練習問題は MN-Core の動作について順を追って理解していただくために、Plus 2 は複数 PE ではなく単 PE 用に入力を小さくしています。
そのため、公開されているテストケースに依存した解法を用いることで、\(5\) 行で解答できます。
\(3\) 問目の A+B 以降ではテストケースが十分に大きくなり、また強固なテストになるように作成されているため、テストケースの内容依存で短くする解法は無いと考えています。
そのためテストケースに依存せず、問題文や入力の制約だけ考慮した考察で楽しんでいただけると考えております。
なお、弊社の不手際によりテストケースに問題が見つかった場合には、テストケースを修正しリジャッジすることがあります。その際はご了承下さい。
練習問題には説明順序の都合上、テストケースの弱さを利用することで現在の \(2\) 行, \(6\) 行, \(6\) 行 よりさらに短くできる問題が存在します。
本番ではそのような問題は無いつもりです。もしあればテストケースを修正して rejudge する可能性があります。
一方、問題の Input に書かれている制約(例えば Welcome では \(0 \le X[i] \le 50\))に依存した解法で Accept する事は問題ありません。
コンテスト開催中に、SNSなどでコンテストの問題について言及していただいて構いませんが、ソースコードや方針を公開するなどの直接的なネタバレ行為はご遠慮ください。
ただし、練習問題に関しては相談・協力・ネタバレ可能です。
ハッシュタグは #MNCore をご利用ください。
「MN-Core 勉強会 Discord」内にて、MN-Core Challenge のお知らせの通知や質問対応などをいたします。こちらのリンクより、ぜひご参加ください。
以下の例外をのぞき、どなたでも参加可能です。
また、主催者や他の参加者等の迷惑になる、若しくは本イベントの円滑な運営を妨げるような振る舞いがあるなど、本イベントへの参加が不適当であると合理的に当社が判断した方については、コンテスト参加後に参加資格の取り消しを行うことがあります。
賞金は、コンテスト終了時点の凍結解除後の順位表をもとに、以下のとおりとします。
1位 | 400,000 JPY |
2位 | 200,000 JPY |
3位 | 100,000 JPY |
4位 | 50,000 JPY |
5位 | 30,000 JPY |
6-10位 | 20,000 JPY |
さらに、上位入賞者にはコンパイラエンジニア採用で選考過程の一部免除のオファーをさせていただきます。
コンテスト期間終了後、2024/10/4 23:59 (JST) までに賞金対象者を確定してオンラインジャッジシステムでお知らせし、ユーザーIDを掲載いたします。
賞金対象者につきましては、各該当者のみにオンラインジャッジに掲示されるフォーム宛に必要に応じて賞金等のお渡しに必要な情報を提示頂く必要があります。
指定した期日までに賞金の進呈に必要な情報の提供がなかった場合は、賞金を放棄したものとみなします。
なお、賞金対象者の繰り上げや再抽選は行いません。
また、賞金の進呈は日本の居住者に限ります。
いずれの賞金も計31点以上を得点した方のみが対象となります。
m
または j
で始まる行の数です。YOUR CODE WILL BE INSERTED HERE
と書かれた行を提出されたvsmで置換して実行し、期待される出力が得られた場合正答とします。m
または j
で始まる行以外は無視されます。(コードテストではDebug get文・Debug set文が使用可能)L2B
L1B
MAB
PE
W
)は放送されています。すなわち、例えば L2B
が出現しない場合どの L2B
についても同じデータの並びになっています。L2B
L1B
MAB
PE
W
)は \(0\) 番目の値のみを比較します。すなわち、例えば L2B
が出現しない場合 \(0\) 番目の L2B
の値のみが合っていれば正答になります。本コンテストにご参加いただくには登録時にイベント規約に同意していただく必要があります。
その他、本イベントに関連するお問い合わせはMN-Core Challenge 事務局までお送りください。