「ハック」とはどういう意味ですか? Codeforcesで?彼らは何をしますか?


ベストアンサー

Codeforcesには、コンテスト中にハッキングする機能があります。ここでのハッキングとは、コンピュータシステムに不正に侵入することを意味するものではありません。

Codeforcesは、参加者をルームと呼ばれる9〜10人のグループに配置します。ハッキングでは、自分の部屋にいる他の人の解決策を見ることができます。コードが間違った答えを与える可能性のあるテストケースがあると思われる場合。ハックをクリックして、テストケースを提供するだけです。仮定が正しければ、100ポイントが追加されます。そうでない場合、ハッキングの試みが間違っていると50ポイントが差し引かれます。

ハッキングする前にソリューションをロックする必要があります。ロックすると、その後はコードを編集できなくなります。

ハッキングは非常に優れています。ハッキングは、他のコードを読んで理解することを教えてくれるからです。これは、すべてのプログラマーが所有しなければならない非常に重要な品質です。

回答

コンテスト中に、提出するソリューションは、「プレテスト」と呼ばれるごく少数のテストケースに対してテストされます。これは、コンテスト中のテスト時間を短縮するために行われます。

ソリューションが事前テストに合格しても、それでも間違っている場合があります。したがって、事前テストに合格した他の誰かによって提出されたソリューションが間違っていると思われる場合(ソリューションをロックした後、「他の人を表示できる」ソリューションを表示できます)、ソリューションが失敗するカウンターテストケースを提供できます。

テストケースでソリューションが失敗した場合(ハッキングの試みが成功した場合)は+100ポイント、合格した場合(ハッキングの試みが失敗した場合)は-50ポイントを獲得します。

ハッキングできるようにするには解決策は、1。事前テストに合格した問題の解決策を提出する必要があります。 2.ソリューションをロックします

注:ロックした後は、「問題の解決策をこれ以上送信できません。ロックした後は、事前テストに合格した他のソリューションを確認できます。

コンテストの終了後、ソリューションはテストケースのセット全体に対してチェックされます。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です