プログラミングの二分法(文字通り)


33

「and」という単語で区切ることができる2つの適度に正確な(しかし賢い可能性のある)単語またはフレーズを含む回答を含む、平易な英語で書かれた質問を考えてみましょう。

Q:コインの両面は何ですか?A:頭と尾

Q:旅行する最良の方法は何ですか?A:飛行機とジェットパック

Q:カラスはなぜライティングデスクのようなのですか?A:両方に「b」があり、どちらにも「n」がないため

ゴール

通常実行すると、そのような質問を出力するプログラムを作成します。

2番目の文字から始まるプログラムから他のすべての文字が削除され、結果が再実行されると、出力の結果は「and」の左側にあるものである必要があります。

他のすべての文字が最初の文字から始まるプログラムから削除され、結果が再実行されると、出力の答えは「and」の右側にあるものでなければなりません。

(「and」自体は出力されません。)

プログラムが

A1B2C3D4E5F6G7H8I9

そしてその出力は

What are the two sides of a coin?

の出力はであるABCDEFGHI必要がheadsあり、の出力はである123456789必要がありますtails

質問と回答に関する規則

  • あなたは私の質問例を使用することができますが、あなた自身の質問を作成することをお勧めします。
  • 質問と2つの回答部分:
    • すべて明確でなければなりません
    • 一般的な文法的に意味のある英語である必要があります
    • 印刷可能なASCII(16進数20から7E)のみを含めることができます
  • 理想的には、質問は大文字で区切り、句読点を付けます(ただし、答えは必須ではありません)。
  • 質問は30文字以上で、エントロピーが3.5以上である必要があります。(文字列を入力し、calculateを押し、最後のH(X)を探します。)
  • 2つの回答部分([space]and[space]それらの間は含まない)は、それぞれエントロピーが2以上の少なくとも5文字である必要があります。
  • 「and」という単語は、どちらの回答部分にも現れる場合があります。

コードに関する規則

  • 3つのコードスニペットはどれも:
    • コンパイラ/インタプリタによって従来無視されていたコメントまたはその他の何かを含む(余分なセミコロンを1つまたは2つ入れることを心配しないでください。ただし、コメントであると思われる場合はおそらくそうです)
    • 実行中にプログラムを終了する
  • コードには、Unicodeや印刷不可能なASCIIなど、任意の文字を含めることができます。
  • 奇数または偶数の文字が含まれる場合があります。
  • 出力は、stdout、ファイル、または妥当と思われるものに出力されます。入力はありません。

得点

私はゴルフの答えを奨励したくありませんが、賢い答えをさらに奨励したいので、得点はコードゴルフと人気コンテストの中間になります。

スコア= (upvotes - downvotes) - floor((bytes in code that outputs question) / 3)

最高のスコアが勝ちます。

http://mothereff.in/byte-counterをバイトカウンターとして使用します。)


6
ああ、これはJavaScriptのような「通常の」言語で行うのはとても難しいです。私が得ることができる最も遠いのは何かのようなものですx0=00;;。素晴らしい挑戦です!
ドアノブ

@Doorknob 00;はボートを収縮させて申し訳ありませんが、従来はコンパイラによって無視されていました...-
ジョンドヴォルザーク

2
真剣に...「リンゴ」は1.92のシャノンエントロピーを持っています???
ジョンドヴォルザーク14

4
It may have an odd or even number of characters奇数でも偶数でもない文字がいくつかありますか?
スナック14

1
@Snackこれにより、2つのアンサーコード部分が同じ長さである必要はないことがわかります。
カルビンの趣味14

回答:


55

Javascript(148バイト)

いくつかのナンセンスリテラルを作成しますが、質問に対してアラート*を作成する副作用があります。(分割は同様に行われますが、各回答に対してアラート*を作成します)。

"';"+alert( 'What is the ideal breakfast???')+/ " ;apl=e"rbta(k"esnc"r.armebplleadc ee g g s(" ) + " \/)k;e"/+ ",t'hceo 'c)a;kye= ailse rat (lpi)e "

分割:

";+lr('hti h da rafs??)/";p="baken".replace   (    /ke/ ,'co');y=alert(p) 

そして

'"aet Wa steielbekat?'+  alert("scrambled eggs")+"\);"+"the cake is a lie"

 

質問: What is the ideal breakfast???

回答:baconおよびscrambled eggs


4
これは私がこのサイトで気に入っている品質です!これを行うことができる人を他にどこで見つけることができますか?
ランチャー

1
私は即興クラス(おそらく)を受講しました。ユーモアの価値については、ここで+1を提供します。しかし、すべての開口科学技術者が知っているように、私たちは科学の実践者です...本当に本当に面白いのは、きちんとした銃作ることです。:-)
レブム博士14

29

Brainfuck(437文字)

私は、これが実際に何か有意義なことをする私の最初のブレインファックプログラムであることを告白しなければなりません。このプログラムは、4つのメモリ位置しか使用しないため、低メモリシステム向けに高度に最適化されています。

質問: What are the two main groups of trees?

回答:conifersおよびbroadleafs

-+[[++++++++++++++++++++++[+>++++++[+>++++++++++++<>-+]+>+-+.++++++<+<+-+]+>+++++.+>++.+-..------.-<--..-+-+-+..->.-+-+-+.+<+++.+-+-+-+-+.++++.+++.+<.+>-+++-+++-+++-++.->]]++-+[[+-+-[[+++++++++++++++[>++>+++++>+++++++<<<-]>-->>---<++.+++++++++++++++++.-------.>.<<.>.>--.<++++.<.>>++.<+++.---.<.>>.+++.<++++++++++.<.>--.------------.++++++++.+++++.<.>-------.>-----.<++++++++.>+++.<+.>--.<<.>-.---------.<.>>+.--.<-..>+.<<[<++>-]<-.<]]]]

メインループ

プログラムは、メインループ(すべての[]ブロックが1回だけ実行されるため、実際にはループではありません)と2つのセクションで構成されます。

-+[[        // let answers enter
            * SNIP interleaved answer sections *
]]
++-+[[      // let odd answer and question enter
    +-+-[[  // let question enter
            * SNIP question section *
    ]]
]]

セクションを個別にテストする場合は、メインループを考慮する必要があります。ロケーション0の偶数回答には-1、奇数回答には1、質問セクションには2が含まれます。

回答セクション

さえ答えます(奇妙な指示は削除されました):

// location 0 contains minus 1 from main
// set location 1 = 10 * 10 minus 1 = 99 (c)
+++++++++++[>++++++++++<-]>-. // c
++++++++++++.-.     // on
-----.---.          // if
-.+++++++++++++.+.  // ers
<                   // goto 0 (which contains 0)
+-+-+-+-+-          // padding to match length of odd answer

奇妙な答え(指示が削除された場合でも):

// location 0 contains 1 from main
// set location 1 = 16 * 6 plus 2 = 98 (b)  location used for characters below 'l'
// set location 2 = 16 * 7 plus 2 = 114 (r) location used for 'l' and above
+++++++++++++++[>++++++>+++++++<<-]>++.>++. // br
---.<               // o
-.+++.              // ad
>---.<              // l
+.----.+++++.       // eaf
>+++++++.           // s
>                   // goto 3 (which contains 0)

質問セクション

その値は他のキャラクターとは大きく異なるため、スペースを別の場所に保存することにしました。これにより、でスペースを簡単に印刷できます<.>

// location 0 contains 2 from main
// set location 1 = 17 * 2 minus 2 = 32 (space)
// set location 2 = 17 * 5 plus 2 = 87 (W)   location used for characters below 'r'
// set location 3 = 17 * 7 minus 3 = 116 (t) location used for 'r' and above
+++++++++++++++[>++>+++++>+++++++<<<-]>-->>---<++. // W
+++++++++++++++++.  // h
-------.>.<         // at
<.>                 // (space)
.>--.<++++.         // are
<.>                 // (space)
>++.<+++.---.       // the
<.>                 // (space)
>.+++.<++++++++++.  // two
<.>                 // (space)
--.------------.    // ma
++++++++.+++++.     // in
<.>                 // (space)
-------.>-----.     // gr
<++++++++.>+++.     // ou
<+.>--.<            // ps
<.>                 // (space)
-.---------.        // of
<.>                 // (space)
>+.--.<-..>+.       // trees
<<[<++>-]<-.<       // ? (value_of_space * 2 minus 1)

最終更新

最終更新では、最小限の命令が使用されるように乗算を最適化しました。また、奇数の回答セクションに2番目の文字グループに「l」を含めると、大幅に改善されました。奇数の回答での1文字の節約は、基本的にプログラム全体からの2文字を意味します。これは、偶数の回答からのパディングも削減するためです。また、あちこちからいくつかの不必要な命令を削除しました。これ以上コードを最適化できるとは思いません。


23

バッチ-84

これをかなり誇りに思う

完全なプログラム:コインの両面は何ですか?(コンソール)

echo What are two sides of a coin?  2>>xx  2>>cc&&eecchhoo  hteaaidlss  2>>xx  2>>cc

偶数のみ:ヘッド(「c」ファイル)

eh htaetosdso  on 2>x >c&echo heads 2>x >c

オッズのみ:テール( 'x'ファイル)

coWa r w ie faci? >x 2>c&echo tails >x 2>c

どちらの場合でも、エラー出力をファイルにリダイレクトすることにより機能します。


短くする方法はすでに考えられていましたが、明日まで待たなければなりません。
Οurous

3
これはこれまでで最高のスコアを持っています:12-28 = -16。
ちょうど半分14

20

Python- 104 96(ゴルフ:76)

私の解決策はかなり単純です(そして何らかの形で読みやすい):

"";print 'What is the color of a zebra?' ;""
paraianat= "' b l a c k '"
aparaianat="'w h i t e'"

出力:

What is the color of a zebra?
black
white

正直なところ、bitpwnerの答えの最初の行のアイデアを見つけました。


さらに読みやすい代替:-113 105 97

"";print 'What is the color of a zebra?' ;""
"p r i n t ' b l a c k '" ;"p r i n t ' w h i t e '"

さらに短い選択肢:-86 76

"";print'What is the color of a zebra?';""
"""";;pprriinntt''bwlhaictke''"""

「チェス盤」も要件を満たしています。
マーティンエンダー14

3
@MartinBüttnerゼブラ。:-P
デビッドリチャービー14

ああ、私は好きzebraです。そして、それはちょうど30文字の質問で「ゴルフ」バージョンにうまく適合します。したがって、ソリューションをわずかに変更しました。:)
ファルコ14

1
三重引用符で囲まれた文字列はコメントではなく、複数行の文字列です。これらはdoc文字列として使用されるため、コメントと混同される可能性があります。
ファルコ

1
更新された質問の長さはわずか29文字です。
デニス14

15

Rebmu:79文字OR(37 + length(p1)+ 2 * max(length(p2)、length(p3)))

最初に、どの言語を学ぶ必要があるを尋ねる79文字のソリューションを提供します。(エントロピー4.0、30文字は含まず?)、Rebolおよび[Red]の提案を提供します。

DD  11  DD :do dd {dd  {p{Which languages must you learn?}qt}} pp{{[RReebdo]l}}

ここで利用できる他の言語にはないユニークな戦術は、中括弧が非対称の文字列区切り文字であり、合法的にネストできるという事実を利用することから得られます。

my-string: {"It's cool," said {Dr. Rebmu}, "for MANY reasons--like less escaping."}

これにより、エスケープシーケンスを使用しないプログラムで簡単に機能する一般的なソリューションを作成できます。79文字バージョンはショートカットするのに十分なほど簡単でしたが、プログラムp2およびp3の任意のプログラムソースを適切に含めるには、完全なテンプレートが必要です。それを使用した場合、87文字になります。

DD  11  DD :do dd {dd  {p{Which languages must you learn?}qt}} ddoo{{pp{{[RReebdo]l}}}}

この一般的な形式を使用するためのパターンは、変数の長さの連続的な文字の3つのソーステキストを持っている場合(のは次のように例を使用してみましょうということですAAABBBBBCCCCCCCあなたはの線に沿って何かとしてそれらをコードすることができます):

DD  11  DD :do dd {dd  {AAAqt}} ddoo{{BCBCBCBCBC C C}}

(注:このパターンは、エスケープ文字を使用するプログラムを微調整しないと機能しませんが、致命的な欠陥ではありません。中括弧で区切られた文字列で一致しない左中括弧を取得するには、次のようなものが必要です{Foo ^{ Bar}...代替文字列表記"Foo { Bar"、および組み合わせたケースは、エスケープされていない文字列の混合物を一緒に接着することで管理できます。

だから...例はどうですか?一般的なフォームが利用可能になると、この573文字プログラムは、3つの従来のコードゴルフソリューションからわずか数分で組み立てられました。

DD 11 DD:do dd {dd {rJ N 0%rN Wa1m2j S {\ x /} D00 Hc&[u [Ze?Wa Qs〜rpKw [isEL00c [skQd2k] [eEV?kQ [tlQ]] pcSeg--b00 [ eZ 1 5] 3] prRJ [si〜dSPscSqFHs] eZ 1 [s + dCa + wM2cNO]]] Va | [mpAp2j] prSI〜w { } Ls2w Wl h01tiVsb01n -1 chRVs { } hLceVn01qt}} ddoo {{BrdSzfc [sn [{N sbeo [tIt0l1eV} 0e5gXN1 01L {5s0} C {1} 0 {0 Do5f0 0bMe1e0r0} 0]] tMw9C9 Numz Jl [paN + [KperlCJBn [[ba sWS {B noJn Nt0a]] {K、j} b P { } lf EZ--n [N m {G otothestoreandbuysome more}] {Takeonedownandpassitar ound} c B w P lf]]}}

誰かが選択した言語でそのプログラムを書きたいと思って、573を打つことができると思うなら、私に知らせてください。あなたがそうするならば、私はあなたに重い評判を賞賛します-あなたの選択した言語がRebmuでないと仮定してください、それらのプログラムが最小でないことを知っているので。:-)

最後に取得する「無駄な」間隔は、p2とp3の長さが不均衡な場合に発生します。ただし、この場合、3つのプログラムはすべてサイズが異なるため、p2 / p3を選択するのに特に適切なペアリングはありません。(迷路など、入力として外部データがなかったため、これらを選択しました。長さが似ているというわけではありません。より最適な新しいプログラムを作成することはできましたが、十分な時間をかけて、君ははしません新しいプログラムを書く ...)

使い方

(注:合理化されたものではなく、より面白そうな、より「創造的な」アプローチから始めました。このアプローチについてはすでに長いので、ブログのエントリに移動しました。)

ここで重要なのは、他のエントリと同様の「文字列としての評価コード」トリックです。非対称文字列の区切り文字の切り札を持っています。80文字のケースの動作を説明することから始めます。

以下は、このケースの読みやすさのために空白を調整する「全体」プログラムです。

DD 11                    ; assign 11 to dd (about to overwrite again)
DD :do                   ; make dd a synonym for DO (a.k.a. "eval")

; eval a string as source code that ends with QUIT (QT)
dd {dd  {p{Which languages must you learn?}qt}}

; we'll never get here, but whatever's here must be legally parseable
pp{{[RReebdo]l}}

ここで、DDをDOの同義語(別名「評価」)に設定します。しかし、半分のプログラムを実行すると、Dを無害なリテラル1に定義することしか効果がないコードを実行するというトリックがあります。

奇数文字コードが行うことは次のとおりです。空白は再び調整されます。

D 1                      ; assign 1 to d
D d                      ; assign d to itself, so it's still 1
d                        ; evaluates to integer, no side effect
{d pWihlnugsms o er?q}   ; string literal, no side effect
p {Rebol}                ; print "Rebol"

そして、これが偶数文字コードです:

D 1                      ; assign 1 to d
D:od                     ; URL-literal (foo:...), no side effect
d                        ; evaluates to integer, no side effect
{{hc agae utyulan}t}     ; string literal (well-formed!), no side effect
p {[Red]}                ; print "[Red]"

実際には、半分にされていないプログラムの場合は、dd {dd {(arbitrary code)qt}}任意のコードを実行します。ただし、評価する呼び出しは1つではなく2つあります。入れ子になったブレースはインターリーブされたコードではうまく機能しますが、DOの評価動作を台無しにするからです。なぜなら:

do {{print "Hello"}}

文字列をプログラムとしてロードしますが、そのプログラムは文字列定数だけになります{print "Hello"}。したがって、ここで使用するトリックは、DD(DOと同じ関数値を保持)を取得して2回実行することです。半分は文字列のさまざまな部分をかみますが、コンテンツの偶数/奇数が正しい場合は両方をかみません。半分にした後に文字列の外側に残っているものは整数定数であるdため、無害です。

このパターンを使用すると、半分にカットされていない場合のプログラムの動作を記述する際に問題が発生しません。コードの文字長が偶数であれば何でも入力できます(QT(QUIT)をカウントしている場合は奇妙です)。奇数から偶数を取得する必要がある場合は、スペースを挿入します(したがって、p1のプログラムの長さが奇数である場合、p1の上記の式には実際に+1があります)。トリックは後でインターリーブされたコードを書くように見えますが、半分にされていない場合はパーサーを渡す必要があります。(QTのために実行されませんが、実行する前にLOADableである必要があります。)

このケースは簡単です。pp未定義であってもシンボルとして問題なくロードさpれ、各ハーフプログラムで印刷用に分割されます。しかし、文字列リテラルを再度使用するだけで、別のトリックを実行できます。半分になったプログラムには、通常どおりにDOが定義されているため、次のように言ってもかまいません。

ddoo{{pp{{[RReebdo]l}}}}

パーサーがピックアップする唯一の部分をシンボリックワードddooと文字列リテラルにすることで、パーサーを怒らせずに、その文字列リテラル内に希望する2つのプログラムをインターリーブできます。半分になったバージョンは次のように言います:

do{p{Rebol}}

..そして...

do{p{[Red]}}

私が言うように、この部分は、プログラムを文字列として扱い、評価する他のソリューションに馴染みがあるように見えます。しかし、競争の場合、パックしているプログラムにネストされた文字列が含まれている場合、それがレンチを投げます。ここで問題が発生するのは、キャレットを介したエスケープ(^)の使用だけです。これは簡単に回避できます。


(小さな「不正」の注意:この問題に対応して「QUIT」にQTを追加しました。実際、以前はquitの略語を意図的に削除していました。 REPLにない場合は2文字のスペースを使用しますが、特にこの場合は追加しませんが、間違っていると思うので追加しますが、変更前は2文字長くなりました。私が最初にソリューションを投稿したとき、Rebmuにバグがあり、実際には動作するはずだったにもかかわらず...実際には動作するはずです)


実際に独自のプログラミング言語を作成しましたか?

2
@ tjt263これは、既存の言語Rebolのコードゴルフ「エンコード」の方が適切です。人々は、たとえばPyth使って同様のことを行っています。これは基本的にPythonを省略しています。しかし、Rebmuには、Rebolパーサーによって実際にロード可能であり、「互換性がある」という点でかなり興味深い違いがあります。Rebolの途中でいつでも侵入できます。たとえば、Hourglassを参照してください。ご希望の場合は、RebolおよびRedチャットでご相談ください。
レブム博士16年

15

Perlの186 139 135

"";print'What are the best things in life?';""&&pprriinntt("'hceraurs ht hyeo ulra meennetmaiteiso'n s   o f   t h e i r   w o m e n ")

人生で最高のものは何ですか?

"pitWa r h ettig nlf?;"&print('crush your enemies'                 )

敵を粉砕する

";rn'htaetebs hnsi ie'"&print"hear the lamentations of their women"

女性の嘆きを聞く

それほど長くない回答の使用:

Perl 79 72

"";print'What are my preferred weapons?';""&&pprriinntt("'smwaocredss'")

What are my preferred weapons?(30バイト、H(X)= 3.76)swords(H(X)= 2,25)およびmaces(H(X)= 2,32)


9

Python- 139 103

"";print'What are the ingredients for success?';""; ";" ;id=='"RUaniincboorwnss'";;pprriinntt  id++"'"'

What are the ingredients for success?-> UnicornsおよびRainbows

テスト:

c="\"\";print\'What are the ingredients for success?\';\"\"; \";\" ;id==\'\"RUaniincboorwnss\'\";;pprriinntt  id++\"\'\"\'"
exec c        # What are the ingredients for success?
exec c[::2]   # Unicorns
exec c[1::2]  # Rainbows
print 
print c[::2]  # ";rn'htaeteigeinsfrsces'";"";d="Unicorns";print d+''
print c[1::2] # "pitWa r h nrdet o ucs?;" ; i='Rainbows';print i+""

古いバージョン:

# What are the ingredients for success?
"";print(('What are the ingredients for success?'));""; ";" ;"pHrEiRnEt (C'OUMnEiSc oZrAnLsG'O)"; ";" ; "p,r iTnOtN(Y' RTaHiEn bPoOwNsY'.)"
# Unicorns
";rn('htaeteigeinsfrsces')";"";print('Unicorns');"";", TONY THE PONY."
# Rainbows
"pit(Wa r h nrdet o ucs?);" ; "HERE COMES ZALGO" ;  print('Rainbows')

6

ハスケル、117

Haskellの機能パラダイムを使用する必要があるということは、すべてを変数に割り当てるか、行コメント--またはブロック{- -}コメントでコメントアウトする必要があることを意味します。ナンセンス関数を割り当てなしで実行することはできません。ですから、正気を保つために、ルールが許す限り質問と回答を短くしました。

質問:何が足りないのでしょうか?

main=putStrLn{---}"What can I not have enough of?"{- }
=u"Scrank=e"sS"h
omeasi"n
=mpauitnS=tpru taSntprt tmLi

-----}

「靴」と「ケーキ」:

mi=uSrn--"htcnInthv nuho?{ 
uSrn="Shoes"
main=putStr mi
--}
anpttL{-}Wa a  o aeeog f"-}="cakes"
main=putStr anpttL
---

注:crank「何が足りないの?」の下の外観 意味があると見なされるべきではありません。


1
コメントは許可されていません
誇りに思ってhaskeller 14

そして、2番目のものはどのように有効なhaskell構文ですか?
誇りに思ってhaskeller 14

元のコードには閉じていないコメントブロックがあります。これは、閉じるペアが行コメントにあるためです。「ケーキ」コードはコードのようにも見えません-anpttLは関数ではありませんか?定義の=記号はどこにありますか?実際にanpttLWaと呼ばれていませんか?
誇りに思っているhaskeller 14

@proudhaskellerはコメントに関するルールを逃しました。ごめんなさい 最初のプログラムには、閉じられていないコメントブロックがありません。それはうまく解析します。行コメントは、ブロックコメント内では無意味です。行コメントが有効であるため、2番目は有効です。anpttLは文字列です。ブロックコメントを削除すると、「ケーキ」に等しいことがわかります。Wa あるいや、それは実際にanpttLWaではありません、ブロックコメントで、そう。
14

2
@proudhaskeller私の頭はGHCiに代わって仕事をさせてくれます。
14

4

Lisp(76文字)

31文字の質問、各回答に6文字⟹長さ-ペイロード= 33

'(: (pprriinncc''fmuacghesnitaa))':(princ "What is your favorite pink hue?")

「あなたの好きな色は何ですか?」を使用したかったのですが、英国式のスペルにまで拡張され、質問の長さは30文字の最小値に達しました。

彼らはCommon Lispは冗長であると言っているが、あなたはこのワンライナーではそうは思わないだろう。それはあまり難読化されていません。何が引用され、何が実行されているかを見るために少しの空白を挿入するだけです。

多くのLisp実装は、シンボルを大文字にワープするため、色を叫びます。気になる場合は、に変更''fmuacghesnitaaしてください""fmuacghesnitaa""


この質問には投票要素が含まれていたため、私はそれを賞賛して、より多くの票を獲得しようとするように注意を引きました。しかし、賞金は尽きており、私は自分自身にポイントを与えることができません:-) Rebmuの祖先の言語に基づいてあなたのエントリーにそれを与え、あなたが前に持っていないならそれをチェックすることをお勧めします! codegolf.stackexchange.com/a/36114/57
博士14

3

スタタ295

質問:今すぐ焼くのに最適なデザートは何ですか?回答:ブラウニーとクッキー。

説明:STATAのコマンドは、改行で区切られています。
「//」はSTATAのコメントですが、「///」はコンパイラに次の行に進み、その内容を現在のコマンドに含めるように指示します。

STATAのコマンドは、多くの場合、区別可能なほど一意であると見なされるように短縮できます(そのため、「生成」は「g」、「グローバル」は「gl」または「glo」、「キャプチャ」は「cap」、ディスプレイ」は「di」などになります。displayコマンドは、画面にテキストを表示します。captureコマンドは、すべてのエラー(構文エラーを含む)をキャプチャします。これが、このプログラムが適切にコンパイルされる理由です。

あなたがうるさくなりたいなら、行の最初の3つの連続したものの後の追加の「/」はコンパイラによって無視されます。また、「brownies」プログラムでは、技術的に「+」はコメントです。しかし、コメントではない場合でもキャプチャコマンドはそれを無関係なものにしていたので、まだ重要だと主張します。

私の本当に長い説明を読んでくれてありがとう。次に、コードについて:

「今すぐ 焼くのに最適なデザートは何ですか?」

g   a = "g   q   /b/a/" 
g l= "b = ""b r o w n i e s "
g   c = "g   /b/a/" 
g lpo= "d = ""c o o k i e s "
g   e = "c a p  "  /////
 +  "d i ""$ b "
g   f = "c a p  "  /////
 +  "d i ""$ d "
g   g = "c a p  "  /////
 + "c a p   / / /  "+ "/ / /"
di "What are the best desserts to bake right now?"

"ブラウニー"

g a="    ba"
gl b="brownies"
    g /// 
 p="  "       
g e="   " //
 di "$b"
    cap ///
+" "  
g g="   " //
  cap ///   +"  "
i"htaetebs esrst aergtnw"

"クッキー"

    g q /// 
 ="  "        
g c="  ba"
glo d="cookies"
    cap ///
+" "  
g f="   " //
 di "$d"
    cap  ///
+ "       " ///
d Wa r h etdset obk ih o?

2

Ksh(82文字)

35文字の質問、各回答に5文字⟹長さ-ペイロード= 37

ec=\'o'(;)eehc(h)oe cChroi m$e1;; '\'
echo  What\'s the  country\'s worst problem?

POSIX以外の関数定義構文を悪用しています。Dashとbashは使用できませんが、ksh(パブリックドメインまたはATT)は使用できます。

注目すべきことは何もありませんが、ほんの少しの反響です。無駄にしたくない。


2

PowerShell 88

"" > $x;{What is my favorite equipment?};"" >> ${x}

${XsXwXoXrXdX};;;${XsXhXiXeXlXdX}

私の好きな機器は何ですか?(30文字、H(X)= 4.0314)

"  x{hti yfvrt qimn?;"> {}
{sword};$XXXXXXX

(5文字、H(X)= 2.32193)

">$;Wa sm aoieeupet}" >$x
$XXXXXX;;{shield}

シールド(5文字、H(X)= 2.58496)

完全なプログラムでは、空の文字列を存在しない変数にリダイレクトします${x}(それらの空の文字列の引用符は、空のブロック{}または$x偶数/奇数バージョンの存在しない変数にリダイレクトされる無意味な文字列を形成するために使用されます) 2つの未使用変数を宣言します(これらは印刷され、別の未使用変数の隣$XXXXXXまたは$XXXXXXX異なるケースに配置されます)。


1

GolfScript、51バイト

"Which are the sides of a coin? ".;""thaeialdss""

出力

Which are the sides of a coin? 

使い方

.; 文字列を複製し、コピーを削除します。 ""空の文字列をプッシュします。thaeialdss未定義なので、何もしません。

奇妙な文字

"hc r h ie faci?";"heads"

出力

heads

使い方

; スタックから最初の文字列を削除します。

でも文字

Wihaetesdso  on ."tails"

出力

tails

使い方

Wihaetesdsoonnoopsです。.空の文字列をスタックに複製します。

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