(この投稿とチャットに関するその後の議論に基づいています-また、TIOのDennisに感謝します!)
挑戦
PowerShellなど、TryItOnlineサイトで現在使用可能な言語を選択します。ときにそのようなことを任意の入力を取らない、そのページで、その言語で書くコード、実行ボタンをクリックすると、そのページの出力がまったく同じ「プレーンURL」フィールドにあるものとするときの保存/ストア代わりにボタンをクリックします。
架空の例として、aaa
これがPowerShellでこれを解決するためのコードであったとします。その後、クリックした結果実行してaaa
上のコードとしてhttps://tio.run/#powershell
SHOULD出力https://tio.run/##K8gvTy0qzkjNyfn/PzEx8f9/AA
時にも「プレーンURL」フィールドで、保存/ストアボタンをクリックします。
得点
結果のURLは、この課題へのご提出です。勝者は、バイト単位で測定された最短URLです。上記の例では、URL https://tio.run/##K8gvTy0qzkjNyfn/PzEx8f9/AA
は44バイトのチャレンジへの送信です。このチャレンジの残りを実行する最短のURLがチャレンジに勝ち、ブラウニーポイント(ポイントは交換不可)を獲得します。可能な限り明確な最小の長さが存在する場合、2つの提出の長さが同じである場合、以前の提出が優先されます。
URL生成
これがリポジトリ内のURL生成アルゴリズムの始まりです。メインコード領域の取得方法、余分な要素の追加、文字列の収縮とBase64の変換、および##
先頭への追加などを確認できます。ここでは詳しく説明しません。課題の一部は、URLがどのように生成されるかを解析して理解し、前述のアルゴリズムの潜在的な癖を悪用することです。
ルール/説明
- 実際のコードは入力を受け取らず、出力としてquine-URLのみを生成する必要があります。
-移入する必要がある唯一のテキストフィールドは、URLにクリックこの手段があるCode
、Header
、Footer
または対応する「コンパイラフラグ」フィールド。Input
そしてArguments
フィールドが禁止されており、未使用/空のままにしなければなりません。[ 実行 ]ボタンをクリックすると、Output
フィールドのみが変更されます。このチャレンジではDebug
、すべての状況でフィールドが無視されます。 - 通常のクインルールは、可能な範囲でコードに適用されます(たとえば、コードはを介して独自のソースコードを読み取ることができません
.code.tio
)。 - 提出物にコードがどのように機能するかの説明を含めてください。
- GitプルリクエストをTIOリポジトリに送信して「トリック」URLまたはショートカットなどを作成することにより、「チート」クインを送信することは許可されていません。
- 同様に、特定の言語を更新して「トリック」URLを生成するプル要求を送信することは許可されていません。
- Dennisのサーバーに親切にして、このチャレンジのために悪用したりエクスプロイトを試みたりしないでください。
https://tio.run/##a+a
、その出力プログラムにリンクされhttps://tio.run/##a+a
、それもによって生成されたリンクタフ有効でsaveState
あったであろうhttps://tio.run/##a@a