2016 Time Capsule String:カバレッジ


8

2016タイムカプセル文字列の74文字を考えます(先頭のスペースに注意してください)。

 !!!!!#$$%&())))*+...1449:=@@@AHILOQQQTTZ\\^`````````eefmpxy{||||~~~~~~~~~

あなたの仕事は、これらの文字を使ってできるだけ多くのプログラムを(同じ言語で)書くことです。各プログラムの出力は空でない必要があります。すべてのプログラムとその出力を考慮する場合、上記の74文字のそれぞれを1回だけ使用する必要があります。

あなたのスコアはあなたが書いたプログラムの数によって決定され、プログラムの合計の長さはタイブレーカーです(最大の長さが勝ちます)。

さらにいくつかのルール:

  1. 各プログラムは終了する必要があります。
  2. 各プログラムは完全なプログラムであり、適切な形式で出力される必要があります。
  3. STDERRへの出力はすべて無視されます。
  4. プログラムの実行に必要なものを除き、フラグを使用してプログラムを実行することはできません。(例えば、-eプログラムソースを実行するフラグ。)
  5. プログラムに抑制できない出力がある場合、出力を検討するときに無視できます。(たとえば、末尾の改行は無視できます。)
  6. 各プログラムは、空のstdinで実行できる必要があります。

私はプログラムを持っていた場合4と、T1~それは出力49それぞれ一緒に考慮するとき、彼らは、次のようになります。

44T1~9

これは、カプセル文字列のサブセットであることがわかります。ただし、プログラムが4@|4あり、|e+それが出力された場合4fそれぞれ次のようになります。

4@|44|e+f

また、3 4であるため、サブセットではありません。


1
ans = ..MATLABからの出力は無視できますか?「Hello、world」などの非常に厳密な形式の課題を除いて、デフォルトで許可されています。
Stewie Griffin

1
プログラムは異なる出力を生成すること、またはそれ自体が異なることは期待されていませんか?
Fatalize

@StewieGriffinはい、できます。これを反映するように編集します。
Conor O'Brien

@LuisMendo各プログラムは空のstdinで実行できるはずです。
Conor O'Brien

@SparklePony「ばかげた」とは言えません。
Conor O'Brien

回答:


2

PHP、22プログラム

うん、ちょっと退屈だ。

プログラム(単一の改行で区切られます):

!
!
$
)
)
.
4
@
Q
T
\
`
`
`
`
e
|
|
~
~
~
~

出力とプログラムの組み合わせ:

!!!!$$))))..44@@QQTT\\````````ee||||~~~~~~~~

ニンジンをリストに追加できます(ただし、「は何も出力しません)
user41805

そして、そうします$(これはユーザー入力を取得します)。つまり、キャロットでは、プログラムが2つ少なくなります($と\の1つを削除)
user41805

@Kritixi Lithos🥕をサポートしていますか?
Robert Fraser

@RobertFraser私が見ることができるのは正方形だけです。しかし、コードであればそれを出力します。ここで
user41805

@KritixiLithosこれはニンジンの絵文字です:emojipedia.org/emoji/%F0%9F%A5%95
Okx

5

Japt11 13プログラム、長さ61

\x:#).&~L // outputs 9  (41 & ~100)
~T+~Tf)p  // outputs 4  ((~0 + ~floor(0)) ** 2)
$~Q$ *\~Z // outputs 1  (~'"' * ~0)
I%A^O||@{=!(Hmy))  // outputs 4  (64 % 10 ^ {} || function(X,Y,Z) { return function() { return ((U = !(H.m("y")))) } })
`!        // outputs !
`!        // outputs !
`.        // outputs .
`@        // outputs @
`Q        // outputs Q
`e        // outputs e
`|        // outputs |
`~        // outputs ~
`~        // outputs ~

単なる文字列リテラルではなく、数字以外の何かを出力する答えを思いつくのは非常に困難です...

出力とプログラムの組み合わせ:

 !!!!!#$$%&())))*+...1449:=@@@AHILOQQQTTZ\\^`````````eefmpxy{||||~~~~~~~~~

私はすべてを得たと思います...


最小限にまで削減した場合:

#)&~L
~T+~T)p
~Q*~Z
I%A
`!
`!
`.
`@
`Q
`e
`|
`~
`~

将来のプログラム/出力のためにこれらの文字を残します:

 !$$()).:=@HO\\^fmxy{||

の2つを取引できます$)または|9文字列リテラル内の文字のいずれかの2のために、つまり、のいずれか2つです!.@Qe|~

また、あなたが出て取引できるQのために第3のプログラムでHO、とZのためにHO@、または{


1

PowerShell、2つのプログラム、長さ31

+!!($eefmpxy =9)

オンラインでお試しください!

出力1
変数を設定作品$eefmpxy9括弧内に、ブールない取ること封入、!その(それがオン$False)、次にブールないこと(それがオン$True)、次いで整数としてキャスト+にそれを回します、1。それはパイプラインに残され、出力は暗黙的です。


4*!$AHILOQQQTTZ

オンラインでお試しください!

出力4
変数$AHILOQQQTTZをデフォルトのに初期化することで機能します。$nullブール値!$Trueです。1はの乗算により暗黙的に整数にキャストされる4*ため、の結果は4パイプラインに残り、出力は暗黙的になります。


PowerShellには他のものについては本当に制限があり|ます。コマンドをパイプライン処理するためのパイプ文字はたくさんありますが、1つしか{ありません})孤独には多すぎる(; バックティック`は、複数の行を1つとして解釈するための「行継続マーカー」として使用されます(読みやすくするために使用されます)が、それに対応する改行はありません。そして、~そして^文字は「将来の使用のために予約されている」ため、それらを使用しようとすると構文エラーが発生します。だから、ほとんどのキャラクターは役に立たないのは残念です。

一方で#文字が(それは完全に無視された後、すべて)コメントを開始し、それは私が上記に含まれていなかったので、そのように使用するcheatyを感じています。



0

05AB1E、4プログラム、長さ19

プログラム

)O!            # outputs 1    fac(sum([]))
A`\            # outputs y    2nd_last(alphabet)
THf`x          # outputs 4    last_primefactor(int(10,16))*2
TL`\           # outputs 9    2nd_last(range[1 ... 10])

出力とプログラムの組み合わせ

!)149AHLOTT\\```fxy
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.