課題は簡単です。プログラムのソースコードの最後、中間、および最初の文字をこの順序で印刷します。
中央の文字は、ソースのn
文字の長さと1インデックス付けを想定して、次のように定義されます。
n
偶数の場合、n/2
-thおよびn/2 + 1
-th文字を出力します。(abcdef == cd
)n
が奇数の場合、(n-1)/2 + 1
-th文字を出力します。(abcde == c
)
ルール
- 入力がない場合、ソースコードの最後、中間、および最初の文字をフォームで出力し
[last][middle][first]
ます。これは3〜4文字の長さになります。 - 出力に末尾の空白を含めることはできません。ただし、空白が最初、中間、または最後の文字である場合、そのように印刷する必要があります。
- ソースコードは
n >= 3
文字数である必要があります。 - コードは
>= 3
一意の文字で構成する必要があります。 - 標準的な抜け穴は禁止されています。
- これはcode-golfであるため、文字の最短の解決策が優先されます。
サンプル
# Form: [code] --> [output]
xyz --> zyx
abcd --> dbca
1 --> # not allowed: too short
abcde --> eca
aaabb --> # not allowed: not enough unique characters
System.out.print("S;pr"); --> ;prS
this is a test --> ts t
123[newline]45 --> 53[newline]1
121
、非常に多くの言語と同じくらい簡単なソリューションが可能です。
-
否定に使用し、改行で暗黙的に印刷するスタックベースの言語を誰かが見つけられる場合\n1-
、3バイトです。私の検索はこれまでのところ無益です。