警官と強盗:逆正規表現ゴルフ
注:このチャレンジは終了しました。今後の警察の提出は、受け入れられた回答とはみなされません。これは、誰もチャレンジに興味がないため、クラックされていない非常に単純な正規表現を将来誰も投稿できないようにするためです。 警官の挑戦 次の仕様を満たす短い難読化された正規表現を作成する必要があります。 オンラインで自由にテストできるフレーバーを選択できます。StackOverflowには、オンラインテスターの良いリストがあります。特に、Regex101はPCRE、ECMAScript、およびPythonのフレーバーをサポートしているため、使い始めるのに適しています。必要に応じて、右上隅のレンチをクリックして、タイムアウト制限を増やすことができます。選択したテスターを回答に含めてください。 好みのフレーバーに適したテスターがない場合は、ideoneなどのオンラインインタープリターを使用して、ホスト言語で小さなスクリプトを作成し、それを使用して提出物をテストできます。 ホスト言語を直接呼び出すことのない、そのフレーバーの任意の機能を使用できます(Perlのコード評価機能など)。 同様に、コード評価に結びつかない限り、任意の修飾子を使用できます(フレーバーにそれらがある場合)。 正規表現は、少なくとも1つの文字列Sを受け入れ、少なくとも1つの文字列Tを、それぞれ16文字以上で256文字以内の長さで、妥当な時間(1分以内に大幅に)拒否する必要があります。SとTには、オンラインテスターに入力する方法がある限り、ASCII以外のUnicode文字を含めることができます。このような文字列のペアは、送信のキーになります。 正規表現は、他の入力に勝手に時間がかかる場合があります。 課題の中核は、キーを見つけるのが難しい正規表現を作成することです。つまり、一致しない文字列と一致する文字列(または、キーの文字列を除くすべての正規表現が終了するまでに数日かかる場合もある)を区別するのは難しいはずです。 強盗の挑戦 独自の正規表現を送信したユーザーを含むすべてのユーザーは、他の送信を「クラック」することをお勧めします。キーの 1つが関連するコメントセクションに投稿されると、提出物がクラックされます。 重要:ほぼすべての文字列をキーの一部に使用できる場合でも、投稿する文字列が両方とも16〜256文字であることを確認してください。 提出物が変更またはクラックされることなく72時間持続する場合、著者は回答でネタバレタグに編集することにより有効なキーを明らかにすることができます。これにより、彼の答えは「安全」になります。つまり、クラッキングされなくなります。 ユーザーごとの送信ごとに1回のクラッキングのみが許可されます。たとえば、ユーザーXに送信する場合: "あなたのキーは0123456789abcdef/ fedcba9876543210です。" 私は間違っています、ユーザーXは私の推測を間違っているとして放棄し、その提出物について追加の推測を提出することはできなくなりますが、他の提出物を解読することはできます(そして、他の人はまだその提出物を解読することができます)。 クラックされたサブミッションは競合から排除されます(「安全」でない場合)。編集または削除しないでください。著者が新しい正規表現を提出したい場合は、別の回答で提出する必要があります。 自分の提出物をクラックしないでください! 注:コメント内のスペースなしの長い文字列の場合、SEは2つのUnicode文字の形式で手動の改行を挿入します。そのため、スペース以外の文字の間で改行するほど長いバックティックでキーを投稿すると、キーを正規表現テスターに直接コピーすることはできません。この場合、警官の正規表現とキーを使用して、関連する正規表現テスターへのパーマリンクを提供してください-ほとんどのテスターにはこの機能が含まれています。 得点 警官のスコアは、クラックされていない限り、バイト単位の正規表現のサイズになります(パターンと修飾子、潜在的な区切り文字はカウントされません)。「安全な」提出の最低スコアが勝ちます。 強盗のスコアは、彼らがクラックした提出の数になります。同点の場合、それらがクラックしたサブミッションの合計バイトサイズは、タイブレーカーとして使用されます。ここでは、最高のバイト数が優先されます。 上記のように、どの警官も強盗として参加でき、その逆も可能です。 チャレンジの2つの部分で別々のリーダーボードを維持します。 リーダーボード 最終更新日:2014年10月19日、20:33 UTC 警官: イタリック体での提出はまだ安全ではありません。 nneonneo、841バイト Wumpus Q. Wumbley、10,602バイト Sp3000、52,506バイト user23013、53,884バイト nneonneo、656,813バイト 強盗: user23013、クラック:11、合計サイズ: 733 + 30 + 2,447 + 71 + 109 …