バーナーディーノは、変更されていないドルの単語を識別する


47

定義

ドルの単語は、その文字の各= 1からZ = 26、セント値を与えられ、そして文字が合計され、結果は100である単語である。ここでは、コードレビューに一例であり、ここにリストされオンラインで見つけたドルの言葉。

入力

入力はazからアルファベット順になり、1つの言語のテキストデータ型になります(配列は許可されます)。他の入力を考慮する必要はありません-スペース、アポストロフィ、ハイフンはありません。小文字、大文字、または組み合わせとして使用できます。末尾の改行が許可されます。

出力

入力がドルの単語である場合は真実の値を出力し、そうでない場合は偽の値を出力します。

テストケース

真実:

buzzy
boycott
identifies
adiabatically
ttttt

偽り:

zzz
zzzzzzz
abcdefghiljjjzz
tttt
basic

これはコードゴルフなので、バイト単位の最短回答が勝ちです!標準の抜け穴とルールが適用されます。タイは最初のポスターに行きます。


20
タイトルにはドルの単語が含まれています。
スティーブン

回答:


7

GS2、6バイト

▲1Θd←q

入力は大文字でなければなりません。

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

使い方

  Θ       Combine the previous two tokens into a block and map it over the input.
▲             Push 64.
 1            Subtract 64 from the character on the stack.
   d      Take the sum of the resulting character array.
    ←     Push 100.
     q    Compare the two items on the stack for equality.



11

Perl 6、21バイト

{100==[+] .ords X%32}

それを試してみてください

代わりの:

{Ⅽ==[+] .ords X%32}

それを試してみてください

そのノートROMAN NUMERAL ONE HUNDREDの... 100 univalとU + 216D
エンコードに3つのバイトを要します。

拡張:

{  # bare block lambda with implicit parameter $_

  100     # is 100
  ==      # equal to
  [+]     # the sum of the following

    .ords # the ordinals of the input (implicit method call on $_)
    X[%]  # crossed using the modulus operator
    32    # with 32 to get 65..90 or 97..122 to become 1..26
}


7

JavaScript(ES6)、46バイト

0またはを返します1

let f =

w=>[...w].map(c=>p-=parseInt(c,36)-9,p=100)|!p

console.log(f('buzzy'))
console.log(f('qwerty'))


興味深いことに、私が試みreduceて再帰したとき、両方とも2バイト長くなりました。
ニール

@Neil実際、reduce()私が最初に投稿したのは、猶予期間の最初の数分間で使用していました。
アーナルド

7

Haskell、32バイト

f s=sum[1|c<-s,_<-['a'..c]]==100

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

アイデアは、リストa内の各文字について、特定の文字までの文字のリストを作成し、合計の長さが100であることを確認することです。

その他の試み:

f s=sum[1|c<-s,_<-['a'..c]]==100

f s=sum[fromEnum c-96|c<-s]==100
f s=100==length((\c->['a'..c])=<<s)
(==100).length.(>>= \c->['a'..c])
(==100).length.(=<<)(\c->['a'..c])
(==100).length.(enumFromTo 'a'=<<)
f s=100==length(do c<-s;['a'..c])

ひどいのenumFromToはとても長いです。


1
あなたはその長さが恥ずべきことであるということは正しいです(100==).length.(enumFromTo 'a' =<<)
Wolf

7

C、45 43バイト

@Neilに2バイトを節約し、ソリューションの大文字と小文字を区別しないようにしてくれてありがとう!

n;f(char*s){for(n=100;*s;)n-=*s++&31;n=!n;}

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


n=0グローバルに設定し、ループ仕様の最初の句をスキップすることで、バイトを保存できるようです。編集:気にしない—最初の呼び出しでのみ機能すると思います。
ジュリアン・ウルフ

3
100セーブバイトからカウントダウンできますか?また、&31コードの大文字と小文字を区別しないようにすることもできます。
ニール

好奇心から、どのように機能しn=!nますか?私はそれnがゼロであるかどうかをチェックすることを理解してい!0ます1!15戻ります0。そして同様に!-15戻ります0。しかし、なぜ?!として使用する場合、どのオペランドがCにあり!integerますか?
ケビンCruijssen

@KevinCruijssen !は単なる論理的なものnotです。Cでは、を0意味しfalse、その他の整数値はを意味しtrueます。だから!0 == 1、そして!n == 0すべてのn != 0
Steadybox

@Steadyboxああ、私はこの部分を知りませんでした:「および他の整数値はtrueを意味します」が、それは確かに理にかなっています。私は常に(誤って)0=false; 1=true代わりにそれを考えていたので、混乱しました。答えてくれてありがとう。
ケビンCruijssen

6

Haskell、32バイト

f w=sum[fromEnum c-96|c<-w]==100

これは小文字入力に対して機能します。大文字の場合、s/96/64/。大/小文字混合のサポートは、大量のバイトを追加します。


6

Mathematica、23バイト

100==Tr@LetterNumber@#&

文字列(または文字の配列)を入力として受け取り、大文字と小文字を区別せずにTrueor を返す純粋な関数False。ここTrでは、文字と数字を一緒に追加しています。その他はすべて自明です。


6

ゼリー9 7?* 8 バイト

ɠO%32S⁼³

フルプログラム。入力がドルワードの場合は1、そうでない場合は0を出力します。

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

どうやって?

ɠO%32S⁼³ - Main link
ɠ        - read a line of input from STDIN
 O       - cast to ordinals
  %32    - mod 32 (vectorises) (-3*32=96 from lowercase; -2*32=64 from uppercase)
     S   - sum
       ³ - literal: 100
      ⁼  - equal?

* 7バイトになりますか?

これは、との入力を取った唯一の理由は、ɠ維持することでした³リテラル100ではなく3として、RDコマンドライン入力(1 回目のプログラム入力)。

これを回避する方法は、デニスが指摘したように、ȷ210 2である生のリテラル形式を使用して100を作成することです。これは別の8バイトにつながりますO%32S=ȷ2が、これは名前のないモナド関数になりました(3 番目の引数を持つ完全なプログラムとして動作します)。

ゴルフでは、変数またはヘルパー関数を作成して、それらが常駐するプログラムを制限することがあるため(関数の再利用を停止せずにスコープ内で名前を再利用することはできません)、また、この場合、7バイトO%32S=³は名前のない関数として受け入れられます。


1
また、O%32S=ȷ2。大文字と小文字の入力に対して機能します。
デニス

@Dennisそれは境界線かもしれO%32S⁼³ませんが、それが入っているプログラムの残りの部分が入力にコマンドライン引数を使用しない限り、実際には有効なエントリではなく、名前のない再利用可能な関数を定義しますか?
ジョナサンアラン

うーん、それができると思います。たとえば、Cでグローバル変数を使用する場合と同じです。
デニス

6

アリス、23バイト

/o!
\i@/e)q&w[?'`-+k3-n

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

入力は小文字にする必要があります。1ドルなどの単語を印刷し0ます。

説明

アリスのテープといくつかの高度な制御フローを披露する時間です。整数と文字列を個別に操作するのはかなり上手ですが、Aliceにはa)文字列の長さを決定する、b)文字とコードポイントを変換する組み込み機能がありません。これは、Aliceのすべてのコマンドが整数を整数にマッピングするか、文字列を文字列にマッピングするためです。ただし、どちらも文字列を整数にマッピングする必要があります(その逆もあります)。したがって、アリスのモードのいずれにも適合しません。

ただし、スタックに加えて、アリスにはテープもあり、枢機modeおよび順序モードはテープ上のデータをさまざまな方法で解釈します

  • Cardinalモードでは、Brainfuckのような他の言語でよく知られている通常のテープです。各セルに1つの整数を格納でき、テープヘッドを移動できます。テープは無限に長く、最初はすべてのセルに-1を保持します。セルにもインデックスが付けられ、テープヘッドはインデックス0から始まります。
  • 通常モードには独自のテープヘッドがあり(インデックス0からも開始)、テープを文字列のリストとして解釈します。文字列は、文字以外のセル(つまり、有効なUnicodeコードポイントではない値)、特に-1で終了します。したがって、順序モードの場合、テープは最初は空の文字列で満たされています。

このテープは上記の両方の操作に使用できます。文字列の長さを取得するには、順序モードでテープに書き込み、カーディナルモードで終端-1を探し、テープヘッドの位置を取得します。文字をコードポイントに変換するには、Cardinalモードでテープから文字を読み取ります。

このソリューションで使用される他の2つの重要な機能は、リターンスタックとイテレータです。Aliceにはリターンスタックがあり、これは通常、ジャンプコマンドを使用するときに満たされj、アドレスをポップして元に戻ることができますk。ただし、でジャンプせずに現在のアドレスをリターンスタックにプッシュすることもできますwrepeatコマンドwと組み合わせると、現在のアドレスを戻りスタックにn回プッシュできます。に到達するたびに、1つのコピーがリターンスタックからポップされ、次の繰り返しを実行します(IPは別のコマンドを実行する前に移動するため、その後のセルから開始します)。リターンスタックが空になると、&kwk何も行わず、IPは単に通過します。したがって&w...k、整数nをポップしてから... n + 1回実行しforます。これにより、単純なループを非常に簡潔に表現できます。

コード自体について...

/     Reflect to SE. Switch to Ordinal.
i     Read the input word as a string.
      Bounce off bottom boundary, move NE.
!     Store the input word on the tape.
      Bounce off top boundary, move SE.
/     Reflect to E. Switch to Cardinal.
e     Push -1.
)     Seek right on the tape for a -1, which finds the -1 terminating
      the input word.
q     Push the tape head's position, which gives us the string length N.
&w    Repeat this loop n+1 times (see above for an explanation)...
  [     Move the tape head left by one cell.
  ?     Retrieve the code point of the character in that cell.
  '`    Push 96.
  -     Subtract it from the code point to convert the letters to 1...26.
  +     Add the result to a running total. This total is initialised to 
        zero, because in Cardinal mode, the stack is implicitly filled with
        an infinite amount of zeros at the bottom.
k    End of loop.
     Note that the above loop ran once more than we have characters in the
     string. This is actually really convenient, because it means that we've
     added a "-1 character" to the running total. After subtracting 96 to
     convert it to its "letter value" this gives 97. So dollar words will
     actually result in 100 - 97 = 3, which we can check against for one
     byte less than for equality with 100.
3-   Subtract 3 to give 0 for dollar words.
n    Logical NOT. Turns 0 (dollar words) into 1 and everything else into 0.
     The IP wraps around to the beginning of the first line.
\    Reflect to NE. Switch to Ordinal.
o    Implicitly convert the result to a string and print it.
     Bounce off top boundary, move SE.
@    Terminate the program.

いいね!私は私の最初の試みで41を得た
KritixiのLithos

6

R、55 54バイト

function(x)sum(match(el(strsplit(x,"")),letters))==100

BLTのおかげで-1バイト

  • 必要な計算を行う関数を返す、そのリターンTRUEFALSE予想されるように。

  • 入力を小文字で受け取ります。すべて大文字のからlettersへのスイッチのみになりLETTERSます


1
function(x)sum(match(el(strsplit(x,"")),letters))==100バイトを保存します。
BLT

6

ルビー、25バイト

->s{s.sum-s.size*64==100}

大文字で動作します。

いくつかのより複雑なRubyエントリが表示されますが、これは本当に簡単です。s.sum入力文字列のASCIIコードを追加し、これから文字列の長さの64倍を減算します。

使用例

f=->s{s.sum-s.size*64==100}

puts f["ADIABATICALLY"]
puts f["ZZZ"]

これはTIO上では動作しません、現在のRuby 2.4上で動作し、
GB

1
@GBはコメントに感謝しますが、2.2.6で実行しているので問題なく動作します。この機能は1.9.3以降で文書化されています。TIO.runとIdeone.comでも動作します。
レベルリバーセント

あなたは正しい、私はそれが2.4で新しく追加されたアレイ#和、と同じであったと考えられている
GB

実際には、ASCII値の合計ではなく、定義は「str内の文字の基本的なnビットチェックサムを返す」です。もちろん、これはこの場合に機能します。
GB


5

05AB1E、9バイト

5bIvAyk>-

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

説明

1我々は比較上の減算を使用してバイトを保存することができます05AB1Eで唯一truthy値である100

5b         # convert 5 to binary (results in 101)
  Iv       # for each letter in input word
    Ayk    # get the index of the letter in the alphabet
       >   # increment
        -  # subtract from total

5

Perl 5、30バイト

@Neilのおかげで-1バイト(31&代わりに-96+)。

29バイトのコード+ -pフラグ。

$@+=31&ord for/./g;$_=$@==100

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


31&ord代わりに使用できますか?
ニール

@ニールハム...私はいつも-96+そのようなことに使用してきました。(しかし、今では古い投稿に戻ってすべての-96+:x を置き換える必要があるように感じます)
ダダ

この質問は、配列が入力として許可されることを指定しています。したがって、これはサブルーチンとしてより簡潔になります:({$@+=31&ord for@_;$@==100}未テスト)
-msh210

私はそれはコンテキストに依存すると思います-ここでは、あなたはそれをで使用しています+=が、他のケースでは括弧の節約を無駄にするかもしれません。
ニール

@ msh210課題は言うyour one language's text datatypes。配列はほとんどPerlのテキストデータ型ではありません...(そうでなければ、実際には1バイトを節約できただろう)
ダダ

5

PowerShell36 30バイト

$args|%{$s+=$_[0]-96};$s-eq100

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

配列として入力しますが、文字を処理するより良い方法があるかどうか疑問に思っています。

編集簡単なスペースを見逃しましたが、@ AdmBorkBorkが親切に私に知らせてくれました:Pまた、実際にはキャラクターを処理するより良い方法がありました!


日屋-いくつかのクイックゴルフ。あなたは周りの括弧を必要[char]$_-96とせず、あなたは33 -eqとするためにスペースを必要とせず、あなたは32にあなたを得る代わりに100行うこともできます。オンラインで試してみてください!"$_"[0][char]$_
AdmBorkBork

ある"周囲に$_必要?キャストなしでも動作するようです。入力が既に文字列配列であることが原因である可能性がありますか?
正弦波

ああ、確かにあなたは正しい。"この特定のインスタンスでは必要ありません。
AdmBorkBork

5

アリス28 18バイト

10バイトのゴルフをしてくれた@MartinEnderに感謝

=I.!'`-+?hn
>3-nO@

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

この投稿では、@ MartinEnderの回答とは異なる方法を使用しています。

この投稿は0x00、偽りと0x01真実のために出力します。

したがって、ここに出力0または1代わりにバージョンがあります:試してみてください!

説明

以下の説明は、「可視」バージョンのものです。どちらも非常によく似ていますが、最初のプログラムでは、最後oは(0または1基本モードになっているため)文字列に変換されませんが、代わりに数値を取得してそのコードポイントで文字を出力します。

=                 Does nothing, but will be useful later on
I                 Read a character and push its code point onto the stack
                  If there is no more input, -1 is pushed instead
.                 Duplicate it
!                 Store it on the tape
#                 Skip the next command
o                 Gets skipped
'`                Push 96
-                 Subtract it from the character
+                 And add it to the total
?                 Load the number on the tape
h                 Increment it
n                 And negate it
                  For all characters that are read, ?hn results in 0,
                  but if -1 is pushed, then the result becomes 1

この後、IPはで左端に回り込み=ます。スタックのトップ値がの場合、0IPはパスで続行し、すべての文字の合計を増やします。入力が完了すると(スタックのトップがになります1)、IPは右に変わります(90時計回り)。

1つ注意することが重要です。最初の行のループは、入力が終了すると1回繰り返されます。これは、減算されます9796から'`-1総からの入力がないことから)。

>                Set the direction of the IP to East
3-               Subtract 3 from it (yields 0 if sum is 100, something else otherwise)
n                Negate it; Zero becomes 1, non-zero numbers become 0
/                Mirror; the IP gets redirected South-East
                 The IP reflects off the bottom and goes North-East
                 Now the program is in Ordinal mode, where numbers are automatically converted into strings when being used
o                Output the top of the stack as a string
                 IP reflects off the top and heads South-East
@                End the program

5

タクシー、1259バイト

Go to Post Office:w 1 l 1 r 1 l.Pickup a passenger going to Auctioneer School.Go to Auctioneer School:s 1 r 1 l 1 l.Pickup a passenger going to Chop Suey.0 is waiting at Starchild Numerology.Go to Starchild Numerology:s 1 l.Pickup a passenger going to Addition Alley.Go to Chop Suey:e 1 l 2 r 3 r 3 r.[a]Switch to plan "b" if no one is waiting.Pickup a passenger going to Charboil Grill.Go to Charboil Grill:n 1 l 3 l 3 l.Pickup a passenger going to What's The Difference.Go to Go More:e.64 is waiting at Starchild Numerology.Go to Starchild Numerology:e 2 r.Pickup a passenger going to What's The Difference.Go to What's The Difference:e 1 l 2 r 1 l.Pickup a passenger going to Addition Alley.Go to Addition Alley:e 2 r.Pickup a passenger going to Addition Alley.Go to Chop Suey:n 1 r 2 r.Switch to plan "a".[b]Go to Addition Alley:n 1 l 2 l.Pickup a passenger going to Equal's Corner.100 is waiting at Starchild Numerology.Go to Starchild Numerology:n 1 l 1 l 3 l 2 r.Pickup a passenger going to Equal's Corner.Go to Equal's Corner:w 1 l.Switch to plan "c" if no one is waiting."TRUE" is waiting at Writer's Depot.[c]"FALSE" is waiting at Writer's Depot.Go to Writer's Depot:n 1 l 1 r.Pickup a passenger going to Post Office.Go to Post Office:n 1 r 2 r 1 l.

改行があると、次のようになります。

Go to Post Office:w 1 l 1 r 1 l.
Pickup a passenger going to Auctioneer School.
Go to Auctioneer School:s 1 r 1 l 1 l.
Pickup a passenger going to Chop Suey.
0 is waiting at Starchild Numerology.
Go to Starchild Numerology:s 1 l.
Pickup a passenger going to Addition Alley.
Go to Chop Suey:e 1 l 2 r 3 r 3 r.
[a]
Switch to plan "b" if no one is waiting.
Pickup a passenger going to Charboil Grill.
Go to Charboil Grill:n 1 l 3 l 3 l.
Pickup a passenger going to What's The Difference.
Go to Go More:e.
64 is waiting at Starchild Numerology.
Go to Starchild Numerology:e 2 r.
Pickup a passenger going to What's The Difference.
Go to What's The Difference:e 1 l 2 r 1 l.
Pickup a passenger going to Addition Alley.
Go to Addition Alley:e 2 r.
Pickup a passenger going to Addition Alley.
Go to Chop Suey:n 1 r 2 r.
Switch to plan "a".
[b]
Go to Addition Alley:n 1 l 2 l.
Pickup a passenger going to Equal's Corner.
100 is waiting at Starchild Numerology.
Go to Starchild Numerology:n 1 l 1 l 3 l 2 r.
Pickup a passenger going to Equal's Corner.
Go to Equal's Corner:w 1 l.
Switch to plan "c" if no one is waiting.
TRUE is waiting at Writer's Depot.
[c]
FALSE is waiting at Writer's Depot.
Go to Writer's Depot:n 1 l 1 r.
Pickup a passenger going to Post Office.
Go to Post Office:n 1 r 2 r 1 l.

Auctioneer Schoolすべて大文字に変換されるため、大文字または小文字を受け入れます。
Chop Suey個々の文字に分割します。
Charboil Grill文字をASCIIコードに変換します。
一度に1つの文字を取得し、ASCIIに変換し、65を減算して、現在の合計に追加します。
キャラクターがなくなったら、合計を100と比較します。

TRUEドルの単語およびFALSEその他すべての値を返します。


1
「退屈な」判読不能なコードとゴルフの言語が20バイト未満の答えの世界では、あなたのエントリを歓迎します。
オリビエデュラック

5

IA-32マシンコード、21バイト

Hexdump:

33 c0 6a 64 5a 8a 01 41 24 1f 75 05 83 ea 01 d6
c3 2b d0 eb f0

アセンブリコード:

    xor eax, eax;   initialize eax to 0
    push 100;       initialize edx
    pop edx;            to 100
myloop:
    mov al, [ecx];  load a byte
    inc ecx;        go to next byte
    and al, 31;     convert from letter to number
    jnz cont;       not done? continue

    ;               done:
    sub edx, 1;     check whether edx got to 0; result is in CF
    __emit(0xd6);   aka SALC - set al to CF
    ret
cont:
    sub edx, eax
    jmp myloop

100から0までカウントします。0に到達すると、true(0xff)を返します。それ以外の場合はfalse(0x00)。


5

Dyalog APL、17 15バイト

100=+/17-⍨⎕AV⍳⍞

Dyalog Classic文字セットを使用します。

              ⍞  ⍝ string input
          ⎕AV⍳   ⍝ index in the character map
      17-⍨       ⍝ subtract 17 from each ('a' = 18)
    +/           ⍝ sum
100=             ⍝ equal to 100?

デフォルトでは、すべての提出は完全なプログラムまたは機能でなければなりません。REPLプログラムは、そのように識別されている限り許可されます。ただし、ユーザー入力を要求する必要があります。
デニス

4

Python、38バイト

lambda s:sum(map(ord,s))==4-96*~len(s)

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

ovsの解と同じ長さ。各ord値から96を引くのではなく、ord合計がに等しいかどうかを確認します100+96*len(s)。これは4-96*~len(s)、に等しい1バイト短く表現され4-96*(-len(s)-1)ます。


Python 3 lambda s:sum(s.encode(),96*~len(s))==4でも機能します。
デニス


4

網膜47 23バイト

\w
!$&
}T`l`_l
^!{100}$

オンラインでお試しください!注:ヘッダーは入力を小文字にし、単語に分割します。結果は別々の行に表示されます。編集:@MartinEnderのおかげで、あまりにも多くのバイトを保存しました。


これは、文字を挿入しながら、徐々にそれらを低下させることにより、文字の値を計算するために多くの短いです:tio.run/nexus/...
マーティン・エンダー

4

オクターブ、18バイト

@(x)sum(x-96)==100

96入力文字列x(小文字)から減算して、文字の数値を取得します。を取り、sumそれをと比較し100ます。1真実の場合には論理値を、0偽の場合には論理値を返します。

「ドルの単語」に対してfalseを与え、「非ドルの単語」に対してtrueを与えても大丈夫であれば、1バイト節約できます。


4

Japt13 12 10バイト

L¥U¬x_c %H

説明:

L¥ U¬x _c %H
L¥(U¬x(_c %H))
L¥(          )   // 100==
   U¬            //   Input split into a char array
     x(     )    //   The sum of:
       _         //     At each char:
        c        //       Get the char-code and
          %H     //       Mod 32

オンラインでテストしてください!

12バイト:

L¥U¬mc m%H x

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

別の手法を使用した別の12バイトソリューション

L¥U¬x@;CaX Ä

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


よくやった!m%H代わりにm-96(最初のバイトで1バイトを節約できると思います(今は両方のケースで機能します、ボーナス!)、そして2番目でL¥U¬x@;CaX Ä
-ETHproductions

@ETHproductionsありがとう!m%H素敵な発見でした。x@素晴らしいアイデアでした!
オリバー

@ETHproductionsが10バイトに減らした;)
オリバー

3

Ruby(2.4 +)、38バイト

小文字で入力します。Ruby 2.4が必要なArray#sumので、TIOで実行されません。

->a{a.chars.map{|c|c.ord-96}.sum==100}

2
String#bytes代わりに使用しString#charsて、を呼び出す必要はありませんc.ord
バリューインク

そして使用sumの代わりに、アレイ上でmap
GB

3

///564 210 189 185バイト

/~/1\/\///4/11~3/41//6/33//2/66//5/22~a/~b/1~c/4~d/3~e/31~f/34~g/6~h/16~i/46~j/36~k/316~l/346~m/2~n/12~o/42~p/32~q/312~r/342~s/62~t/162~u/462~v/362~w/3162~x/3462~y/22~z/122~5555/0///1/0

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

「ドルの単語」の場合は1を出力し、それ以外の場合は「0」を出力します

入力は次のとおりです:(右端までスクロールします)

/~/1\/\///4/11~3/41//6/33//2/66//5/22~a/~b/1~c/4~d/3~e/31~f/34~g/6~h/16~i/46~j/36~k/316~l/346~m/2~n/12~o/42~p/32~q/312~r/342~s/62~t/162~u/462~v/362~w/3162~x/3462~y/22~z/122~5555/0//INPUT WORD HERE/1/0

各文字を単項の値で置き換え、次に単項100を0で置き換えます。次に、単語の値を1で置き換えます。単語の値が0の場合、末尾に1が表示されるため、コードは、0を置き換えます。単語の値がそれ以外の場合、その0を出力します。

ゴルフは、コード内の一般的な出現を置換として使用することで機能します。


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