火星の宿題をしてください


37

私の宿題は、729〜810語の火星のエッセイ(下記参照)を書くことです。あなたの仕事は、エッセイを生成するプログラムを書くことです。

歴史

20世紀の変わり目頃に、精神主義者のキャサリンエリーゼミュラーは火星人と通信したと言われています。夢遊病のトランスの間、彼女は火星の台本を書きます。心理学者のテオドール・フローニーは、彼女の火星の文章が母国のフランス語に非常に似ていることを発見し、彼の著書「インドから惑星の火星まで」で、キャサリンの火星のアルファベットを記録しました。

以下は、拡張された神話を持つアルファベットに大まかに基づいています。

問題の説明

火星の言語には21の文字があり、ラテン語の各同等物の横に以下に示します。

ここに画像の説明を入力してください

残念なことに、火星のユニコードはありません(火星は宇宙の一部ですが)ので、ラテン文字を使用し続けています。

英語では、音素は2つの主要なタイプ(子音/母音)に分けられますが、これらは大まかに文字にマッピングされますが、火星には3つの文字タイプがあります。

  • 母音:aeimnou
  • 硬い子音:bcdgkpt
  • 柔らかい子音:fhlrsvz

これに加えて、火星語には単一の句読点、つまりピリオドが含まれています。

火星語は 3~9文字の集合です。すべての火星語には、少なくとも1つの母音、1つの硬い子音、および1つの柔らかい子音が含まれます(任意の配置)。たとえば、fngcdazvpi、およびpascal火星の言葉です。

火星文は 3~9火星単語スペースで区切られた期間が続くのセットです。

火星の段落は 3~9火星文スペースで区切られた改行に続くのセットです。

火星のエッセイは何の連続した単語の繰り返しが含まれていない火星の段落のコレクションです。

連続した単語の繰り返しは Sが単語の連続したセットである任意の構造のSSです。この定義は文と段落の境界を無視することに注意してください。

注:各例の後に単一の末尾の改行があります(火星のすべての段落は改行で終わるため)

火星のエッセイではない

lorem ipsum dolor sit amet。quis nostrudの興奮ullamco分娩。

...多くの理由で。この例は、いくつかの雑則を説明するためのものです。

  • loremは、子音がないため火星語ではありません。
  • ametは、子音がないため、火星語ではありません。(m火星の母音です)。
  • quisは、子音がないため火星語ではありません
  • qは火星の文字ではないため、quisは火星の単語ではありません
  • 興奮は9文字以上あるため、火星の言葉ではありません
  • xは火星の手紙ではないため、興奮は火星の言葉ではない

火星のエッセイ

fng cdaz vpi。パスカルは基本を壊した。ポプラーは素晴らしい味。

...火星の段落だからです。火星の段落には3つの火星の文が含まれています。

火星のエッセイではない

fng cdaz vpi。パスカルは基本を壊した。無料のパスカルルール。

... free pascal rules.火星の文ではない、なぜなら火星の言葉でもfreeなけれrulesば、硬い子音もないからだ。

火星のエッセイ

fng cdaz vpi。パスカルは基本を壊した。ポプラーは素晴らしい味。
cdaz vpi fng。基本的なブレークパスカル。ポプラーは激しくパンチします。fng cdaz vpi。

... 2つの火星の段落が含まれています。この文fng cdaz vpi.は2回表示されますが、それで十分です。

火星のエッセイではない

ポプラはfngを味わいます。cdaz vpiパスカル。fng cdaz vpiを壊しました。
パスカルはオミクロンの惑星を壊しました。基本的な怖いヤギ。vpi piv vpi。

...コンストラクトfng. cdaz vpi pascal. broke fng cdaz vpi. [nl] pascal brokeは連続した単語の繰り返しであるため。

チャレンジ

あなたの課題は、入力を受け付けない関数またはプログラムを作成することです。これにより、出力として宿題が生成されます。つまり、プログラムは729〜810ワード(包括的)の火星のエッセイを生成する必要があります。プログラムの出力は有効な火星のエッセイでなければなりませんが、ランダムに生成したり毎回異なるものにする必要はありません。 有効な火星のエッセイカウントを生成するために行うこと

私がしましたエッセイをチェックするためのC ++プログラム書かれたあなたが使用することを許可していることを。

これはコードゴルフです。バイト単位の最短コードが優先されます。標準の抜け穴は許可されていません。


4
Popplersの味は素晴らしいです...それは未来のリファレンスですか?D
DJMcMayhem

2
また、チャットでDrMcMoylexに回答しましたが、ここでの記録のためだけに...はい。(FYI、ベース9で1000から1100ワードである729および810ワード要件も間接参照です
H Walters

1
1つを表示するために、ちょっとしたジゲリーポケリーをしました。
ジョナサンアラン

9
codegolfで「宿題をしてください」という質問を見たのはこれが初めてだと思います。通常、これらは適切なstackoverflow上にあります。:-)
レイ

4
「基本的な怖いヤギ」:/これが間違っていることを確認できます
Downgoat

回答:


14

05AB1E25 24 22 20バイト

-2バイトはエミグナのおかげです(重要なリファクタリング、ありがとうございます)。

A7£œJðý72ô€¨'.«9ô9£»

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

A7£                     # Push first 7 letters of the alphabet.
   œJðý                 # All 5040 permutations of "abcdefg" joined by spaces.
       72ô              # Split into pieces of 72 (Sentences).
          €             # For each piece...
           ¨'.«         # Lop of the last char and concat a period.
               9ô       # Split into pieces of 9 (paragraphs).
                 9£     # Take only the first 9 paragraphs.
                   »    # Join by newlines and implicitly print.

810ワードバージョンは729ワードバージョンよりも短いことがわかります。

出力:

abcdefg abcdegf abcdfeg abcdfge abcdgef abcdgfe abcedfg abcedgf abcefdg. abcefgd abcegdf abcegfd abcfdeg abcfdge abcfedg abcfegd abcfgde abcfged. abcgdef abcgdfe abcgedf abcgefd abcgfde abcgfed abdcefg abdcegf abdcfeg. abdcfge abdcgef abdcgfe abdecfg abdecgf abdefcg abdefgc abdegcf abdegfc. abdfceg abdfcge abdfecg abdfegc abdfgce abdfgec abdgcef abdgcfe abdgecf. abdgefc abdgfce abdgfec abecdfg abecdgf abecfdg abecfgd abecgdf abecgfd. abedcfg abedcgf abedfcg abedfgc abedgcf abedgfc abefcdg abefcgd abefdcg. abefdgc abefgcd abefgdc abegcdf abegcfd abegdcf abegdfc abegfcd abegfdc. abfcdeg abfcdge abfcedg abfcegd abfcgde abfcged abfdceg abfdcge abfdecg.
abfdegc abfdgce abfdgec abfecdg abfecgd abfedcg abfedgc abfegcd abfegdc. abfgcde abfgced abfgdce abfgdec abfgecd abfgedc abgcdef abgcdfe abgcedf. abgcefd abgcfde abgcfed abgdcef abgdcfe abgdecf abgdefc abgdfce abgdfec. abgecdf abgecfd abgedcf abgedfc abgefcd abgefdc abgfcde abgfced abgfdce. abgfdec abgfecd abgfedc acbdefg acbdegf acbdfeg acbdfge acbdgef acbdgfe. acbedfg acbedgf acbefdg acbefgd acbegdf acbegfd acbfdeg acbfdge acbfedg. acbfegd acbfgde acbfged acbgdef acbgdfe acbgedf acbgefd acbgfde acbgfed. acdbefg acdbegf acdbfeg acdbfge acdbgef acdbgfe acdebfg acdebgf acdefbg. acdefgb acdegbf acdegfb acdfbeg acdfbge acdfebg acdfegb acdfgbe acdfgeb.
acdgbef acdgbfe acdgebf acdgefb acdgfbe acdgfeb acebdfg acebdgf acebfdg. acebfgd acebgdf acebgfd acedbfg acedbgf acedfbg acedfgb acedgbf acedgfb. acefbdg acefbgd acefdbg acefdgb acefgbd acefgdb acegbdf acegbfd acegdbf. acegdfb acegfbd acegfdb acfbdeg acfbdge acfbedg acfbegd acfbgde acfbged. acfdbeg acfdbge acfdebg acfdegb acfdgbe acfdgeb acfebdg acfebgd acfedbg. acfedgb acfegbd acfegdb acfgbde acfgbed acfgdbe acfgdeb acfgebd acfgedb. acgbdef acgbdfe acgbedf acgbefd acgbfde acgbfed acgdbef acgdbfe acgdebf. acgdefb acgdfbe acgdfeb acgebdf acgebfd acgedbf acgedfb acgefbd acgefdb. acgfbde acgfbed acgfdbe acgfdeb acgfebd acgfedb adbcefg adbcegf adbcfeg.
adbcfge adbcgef adbcgfe adbecfg adbecgf adbefcg adbefgc adbegcf adbegfc. adbfceg adbfcge adbfecg adbfegc adbfgce adbfgec adbgcef adbgcfe adbgecf. adbgefc adbgfce adbgfec adcbefg adcbegf adcbfeg adcbfge adcbgef adcbgfe. adcebfg adcebgf adcefbg adcefgb adcegbf adcegfb adcfbeg adcfbge adcfebg. adcfegb adcfgbe adcfgeb adcgbef adcgbfe adcgebf adcgefb adcgfbe adcgfeb. adebcfg adebcgf adebfcg adebfgc adebgcf adebgfc adecbfg adecbgf adecfbg. adecfgb adecgbf adecgfb adefbcg adefbgc adefcbg adefcgb adefgbc adefgcb. adegbcf adegbfc adegcbf adegcfb adegfbc adegfcb adfbceg adfbcge adfbecg. adfbegc adfbgce adfbgec adfcbeg adfcbge adfcebg adfcegb adfcgbe adfcgeb.
adfebcg adfebgc adfecbg adfecgb adfegbc adfegcb adfgbce adfgbec adfgcbe. adfgceb adfgebc adfgecb adgbcef adgbcfe adgbecf adgbefc adgbfce adgbfec. adgcbef adgcbfe adgcebf adgcefb adgcfbe adgcfeb adgebcf adgebfc adgecbf. adgecfb adgefbc adgefcb adgfbce adgfbec adgfcbe adgfceb adgfebc adgfecb. aebcdfg aebcdgf aebcfdg aebcfgd aebcgdf aebcgfd aebdcfg aebdcgf aebdfcg. aebdfgc aebdgcf aebdgfc aebfcdg aebfcgd aebfdcg aebfdgc aebfgcd aebfgdc. aebgcdf aebgcfd aebgdcf aebgdfc aebgfcd aebgfdc aecbdfg aecbdgf aecbfdg. aecbfgd aecbgdf aecbgfd aecdbfg aecdbgf aecdfbg aecdfgb aecdgbf aecdgfb. aecfbdg aecfbgd aecfdbg aecfdgb aecfgbd aecfgdb aecgbdf aecgbfd aecgdbf.
aecgdfb aecgfbd aecgfdb aedbcfg aedbcgf aedbfcg aedbfgc aedbgcf aedbgfc. aedcbfg aedcbgf aedcfbg aedcfgb aedcgbf aedcgfb aedfbcg aedfbgc aedfcbg. aedfcgb aedfgbc aedfgcb aedgbcf aedgbfc aedgcbf aedgcfb aedgfbc aedgfcb. aefbcdg aefbcgd aefbdcg aefbdgc aefbgcd aefbgdc aefcbdg aefcbgd aefcdbg. aefcdgb aefcgbd aefcgdb aefdbcg aefdbgc aefdcbg aefdcgb aefdgbc aefdgcb. aefgbcd aefgbdc aefgcbd aefgcdb aefgdbc aefgdcb aegbcdf aegbcfd aegbdcf. aegbdfc aegbfcd aegbfdc aegcbdf aegcbfd aegcdbf aegcdfb aegcfbd aegcfdb. aegdbcf aegdbfc aegdcbf aegdcfb aegdfbc aegdfcb aegfbcd aegfbdc aegfcbd. aegfcdb aegfdbc aegfdcb afbcdeg afbcdge afbcedg afbcegd afbcgde afbcged.
afbdceg afbdcge afbdecg afbdegc afbdgce afbdgec afbecdg afbecgd afbedcg. afbedgc afbegcd afbegdc afbgcde afbgced afbgdce afbgdec afbgecd afbgedc. afcbdeg afcbdge afcbedg afcbegd afcbgde afcbged afcdbeg afcdbge afcdebg. afcdegb afcdgbe afcdgeb afcebdg afcebgd afcedbg afcedgb afcegbd afcegdb. afcgbde afcgbed afcgdbe afcgdeb afcgebd afcgedb afdbceg afdbcge afdbecg. afdbegc afdbgce afdbgec afdcbeg afdcbge afdcebg afdcegb afdcgbe afdcgeb. afdebcg afdebgc afdecbg afdecgb afdegbc afdegcb afdgbce afdgbec afdgcbe. afdgceb afdgebc afdgecb afebcdg afebcgd afebdcg afebdgc afebgcd afebgdc. afecbdg afecbgd afecdbg afecdgb afecgbd afecgdb afedbcg afedbgc afedcbg.
afedcgb afedgbc afedgcb afegbcd afegbdc afegcbd afegcdb afegdbc afegdcb. afgbcde afgbced afgbdce afgbdec afgbecd afgbedc afgcbde afgcbed afgcdbe. afgcdeb afgcebd afgcedb afgdbce afgdbec afgdcbe afgdceb afgdebc afgdecb. afgebcd afgebdc afgecbd afgecdb afgedbc afgedcb agbcdef agbcdfe agbcedf. agbcefd agbcfde agbcfed agbdcef agbdcfe agbdecf agbdefc agbdfce agbdfec. agbecdf agbecfd agbedcf agbedfc agbefcd agbefdc agbfcde agbfced agbfdce. agbfdec agbfecd agbfedc agcbdef agcbdfe agcbedf agcbefd agcbfde agcbfed. agcdbef agcdbfe agcdebf agcdefb agcdfbe agcdfeb agcebdf agcebfd agcedbf. agcedfb agcefbd agcefdb agcfbde agcfbed agcfdbe agcfdeb agcfebd agcfedb.
agdbcef agdbcfe agdbecf agdbefc agdbfce agdbfec agdcbef agdcbfe agdcebf. agdcefb agdcfbe agdcfeb agdebcf agdebfc agdecbf agdecfb agdefbc agdefcb. agdfbce agdfbec agdfcbe agdfceb agdfebc agdfecb agebcdf agebcfd agebdcf. agebdfc agebfcd agebfdc agecbdf agecbfd agecdbf agecdfb agecfbd agecfdb. agedbcf agedbfc agedcbf agedcfb agedfbc agedfcb agefbcd agefbdc agefcbd. agefcdb agefdbc agefdcb agfbcde agfbced agfbdce agfbdec agfbecd agfbedc. agfcbde agfcbed agfcdbe agfcdeb agfcebd agfcedb agfdbce agfdbec agfdcbe. agfdceb agfdebc agfdecb agfebcd agfebdc agfecbd agfecdb agfedbc agfedcb. bacdefg bacdegf bacdfeg bacdfge bacdgef bacdgfe bacedfg bacedgf bacefdg.

1
私たちはもう
ジョナサンアラン

"."'.1バイトを保存できます。
エミグナ16

1
またはA7£œJðý72ô€¨'.«9ô9£»20のための
Emigna

痛い。公正なこと!!
ジョナサンアラン

27

ゼリー28 26 25 24 23 バイト

carusocomputingのおかげで-1バイト(単語thimbleをに置き換えますabcdefg

9ØaḣŒ!s²ḣµs9K€;€”.K;⁷µ€

TryItOnline!

どうやって?

すべてのリスト作り362880最初の順列7つの 9英語のアルファベットの文字abcdefghiすべての火星の単語の性質を持っているし、すべて異なっていると、最初の使用エッセイにフォーマットして729言葉を。

9ØaḣŒ!s²ḣµs9K€;€”.K;⁷µ€ - Main link: no arguments
9                       - 9 as x
         µ              - monadic chain separation
 Øa                     - yield lowercase alphabet
   ḣ                    - head to x ("abcdefghi")
    Œ!                  - all permutations (362880 distinct Martian words)
       ²                - square x = 81 
      s                 - split into chunks of length 81 (the paragraphs)
        ḣ               - head to x (get the first 9 paragraphs only)
                     µ€ - monadic chain for €ach (for each chunk:)
          s9            -     split into chunks of length 9 (the sentences)
            K€          -     join with spaces for €each (between words in each sentence)
              ;€        -     concatenate €ach with
                ”.      -         '.' (add a full stop* after each sentence)
                  K     -     join with spaces (add a space between the sentences)
                   ;    -     concatenate with
                    ⁷   -         a line feed
                        - implicit print

*期間


2
アルファベットの最初の7文字を使用してバイトを節約できますabcdefg
魔法のタコUr

1
Gahhh ...それは私もあなたを打ち負かすことができたバイトだった。私は愚かな笑です。
魔法のタコUr

とにかくそこに着く気がする!
ジョナサンアラン

4
タグ、あなたはそれだ、別のバイトを見つける;)。
魔法のタコUr

10

ルビー、86 83 82 79バイト

(8019..8747).map{|x|$><<x.to_s(3).tr('012','abf')+(x%9>7?".\n":x%3>1?". ":" ")}

秘::ベース3に102000000から102222222までのすべての数字を印刷する


102Mはどこから来たのですか?
ムクルクマール

102000000〜102222222(基数3)の間の数字は9文字の単語になります。8019ベース10は102Mベース3である
GB

8

Python 3、121 119バイト

from itertools import*
i=729
while i:i-=1;print(*list(permutations('thimble'))[i],sep='',end='.'*(i%9<1)+' \n'[i%81<1])

repl.it

どうやって?

カウントダウンしi=729、i番目の順列の文字のリストを'thimble'次の明確な火星語(list(permutations('thimble'))[i])として取得します。

回避''.join(...)を用いて*expressionのデフォルトのセパレータを変えながらリストを展開するprint空の文字列(の空間からsep='')。

end引数を使用して、printモジュラー演算を使用して必要に応じてスペース、フルストップ、および改行をオプションで追加します。'.'*(i%9<1)2文字の文字列(' \n'[i%81<1])にインデックスを付けることで、9ワードごとにフルストップが続き、81ワードごとにラインフィードが続きます。


8

Mathematica、113バイト

StringRiffle[(p=Partition)["ark"["bus","car"][[#]]&/@Differences@Array[ThueMorse,730],3]~p~3,n=".\n",". "," "]<>n

出力として文字列を生成する名前のない関数。その文字列は火星のエッセイであり、各文には3つの単語があり、各段落には3つの文があります。(その確定的な出力は以下のとおりです。)

アルゴリズムの中核は、Thue–Morseシーケンスの違いが、連続する数字の繰り返しがない3つのシンボル–1、0、1の無限シーケンスを形成するというクールな数学的な事実を使用しています。Differences@Array[ThueMorse,730]長さ729までそのシーケンスを生成します。

次に"ark"["bus","car"][[#]]&/@、このシーケンスに適用されます。これは、各1を「バス」(最初の引数)に、各-1を「車」(最後の引数)に、各0を「アーク」(関数の頭)に変換します。(p=Partition)[...,3]~p~3この単語シーケンスをネストされたリストに分割します。各リストは、それぞれ3単語の3つのリストで構成されます。最後StringRiffle[...,n=".\n",". "," "]に、リストレベルに応じて異なる区切り文字ですべての単語を連結します。<>n最後のピリオドと改行を追加します。

出力には繰り返しがないように見えません。

ark car bus. car ark bus. ark car ark.
bus car bus. ark car bus. car ark bus.
car bus ark. car ark bus. ark car bus.
car ark bus. ark car ark. bus car bus.
ark car ark. bus ark car. bus car ark.
bus car bus. ark car bus. car ark bus.
ark car ark. bus car bus. ark car bus.
car ark bus. car bus ark. car ark bus.
ark car bus. car ark bus. car bus ark.
car bus car. ark bus ark. car ark bus.
car bus ark. car ark bus. ark car bus.
car ark bus. ark car ark. bus car bus.
ark car bus. car ark bus. car bus ark.
car ark bus. ark car bus. car ark bus.
ark car ark. bus car bus. ark car ark.
bus ark car. bus car ark. bus car bus.
ark car bus. car ark bus. ark car ark.
bus car bus. ark car ark. bus ark car.
bus car ark. bus ark car. ark bus car.
bus ark car. bus car ark. bus car bus.
ark car ark. bus ark car. bus car ark.
bus car bus. ark car bus. car ark bus.
ark car ark. bus car bus. ark car bus.
car ark bus. car bus ark. car ark bus.
ark car bus. car ark bus. ark car ark.
bus car bus. ark car ark. bus ark car.
bus car ark. bus car bus. ark car bus.
car ark bus. ark car ark. bus car bus.
ark car bus. car ark bus. car bus ark.
car ark bus. ark car bus. car ark bus.
car bus ark. car bus car. ark bus ark.
car ark bus. car bus ark. car ark bus.
ark car bus. car ark bus. ark car ark.
bus car bus. ark car bus. car ark bus.
car bus ark. car ark bus. ark car bus.
car ark bus. car bus ark. car bus car.
ark bus ark. car ark bus. car bus ark.
car bus car. ark bus car. bus ark car.
ark bus ark. car bus car. ark bus ark.
car ark bus. car bus ark. car ark bus.
ark car bus. car ark bus. car bus ark.
car bus car. ark bus ark. car ark bus.
car bus ark. car ark bus. ark car bus.
car ark bus. ark car ark. bus car bus.
ark car bus. car ark bus. car bus ark.
car ark bus. ark car bus. car ark bus.
ark car ark. bus car bus. ark car ark.
bus ark car. bus car ark. bus car bus.
ark car bus. car ark bus. ark car ark.
bus car bus. ark car bus. car ark bus.
car bus ark. car ark bus. ark car bus.
car ark bus. car bus ark. car bus car.
ark bus ark. car ark bus. car bus ark.
car ark bus. ark car bus. car ark bus.
ark car ark. bus car bus. ark car bus.
car ark bus. car bus ark. car ark bus.
ark car bus. car ark bus. ark car ark.
bus car bus. ark car ark. bus ark car.
bus car ark. bus car bus. ark car bus.
car ark bus. ark car ark. bus car bus.
ark car ark. bus ark car. bus car ark.
bus ark car. ark bus car. bus ark car.
bus car ark. bus car bus. ark car ark.
bus ark car. bus car ark. bus car bus.
ark car bus. car ark bus. ark car ark.
bus car bus. ark car bus. car ark bus.
car bus ark. car ark bus. ark car bus.
car ark bus. ark car ark. bus car bus.
ark car ark. bus ark car. bus car ark.
bus car bus. ark car bus. car ark bus.
ark car ark. bus car bus. ark car ark.
bus ark car. bus car ark. bus ark car.
ark bus car. bus ark car. bus car ark.
bus car bus. ark car ark. bus ark car.
bus car ark. bus ark car. ark bus car.
bus ark car. ark bus ark. car bus car.
ark bus car. bus ark car. bus car ark.
bus ark car. ark bus car. bus ark car.
bus car ark. bus car bus. ark car ark.
bus ark car. bus car ark. bus car bus.
ark car bus. car ark bus. ark car ark.

Mathematica、100バイト

StringRiffle[(p=Partition)[Permutations@Characters@"thimble"~Take~729,9]~p~9,n=".\n",". "," ",""]<>n

Jonathan AllenのJellyアルゴリズムの直接ポート。


私はそこに車のバス車のバスを見る
破壊可能なレモン

ちょうど私のディスプレイNVM待って
破壊可能なレモン

それを行うだけで短くなりますPrint@"fng cdaz vpi. pascal broke basic. popplers taste great."
パベル

1
@Pavel完全に有効なエッセイですが、あなたは私の宿題の割り当てについて恥ずかしがり屋の約720語です。
Hウォルターズ

@HWalters私が見る、私は問題を誤解しています。おっとっと。
パベル

4

PHP、86バイト

for(;$i<729;$$s="")echo${$s=str_shuffle(abcdefg)}??$s.(++$i%3?"":".").($i%9?" ":"\n");

単語を繰り返さないランダム化された729ワードのエッセイを生成します。
次のように使用します:

php -r 'for(;$i<729;$$s="")echo${$s=str_shuffle(abcdefg)}??$s.(++$i%3?"":".").($i%9?" ":"\n");'

説明:

for(;$i<729;                                      # until we've generated 729 words
  $$s="")                                         # assign a blank string to the variable for the previous word
    echo ${$s=str_shuffle(abcdefg)}??             # generate a random word and if the variable for it has been assigned echo that variable (a blank string)
         $s.(++$i%3?"":".").($i%9?" ":"\n");      # otherwise echo the string and punctuation based on the word number (which is incremented here)

4

///、95バイト

/_/abf//-/_ _a _e _i _m _n _o _u _aa.//'/- b- c- d- g- j- p- t- bb-/'
f'
h'
l'
r'
s'
v'
z'
ff'

(最後に追加の新しい行、ここには表示されません)

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

エッセイ:

abf abfa abfe abfi abfm abfn abfo abfu abfaa. babf abfa abfe abfi abfm abfn abfo abfu abfaa. cabf abfa abfe abfi abfm abfn abfo abfu abfaa. dabf abfa abfe abfi abfm abfn abfo abfu abfaa. gabf abfa abfe abfi abfm abfn abfo abfu abfaa. jabf abfa abfe abfi abfm abfn abfo abfu abfaa. pabf abfa abfe abfi abfm abfn abfo abfu abfaa. tabf abfa abfe abfi abfm abfn abfo abfu abfaa. bbabf abfa abfe abfi abfm abfn abfo abfu abfaa.
fabf abfa abfe abfi abfm abfn abfo abfu abfaa. babf abfa abfe abfi abfm abfn abfo abfu abfaa. cabf abfa abfe abfi abfm abfn abfo abfu abfaa. dabf abfa abfe abfi abfm abfn abfo abfu abfaa. gabf abfa abfe abfi abfm abfn abfo abfu abfaa. jabf abfa abfe abfi abfm abfn abfo abfu abfaa. pabf abfa abfe abfi abfm abfn abfo abfu abfaa. tabf abfa abfe abfi abfm abfn abfo abfu abfaa. bbabf abfa abfe abfi abfm abfn abfo abfu abfaa.
habf abfa abfe abfi abfm abfn abfo abfu abfaa. babf abfa abfe abfi abfm abfn abfo abfu abfaa. cabf abfa abfe abfi abfm abfn abfo abfu abfaa. dabf abfa abfe abfi abfm abfn abfo abfu abfaa. gabf abfa abfe abfi abfm abfn abfo abfu abfaa. jabf abfa abfe abfi abfm abfn abfo abfu abfaa. pabf abfa abfe abfi abfm abfn abfo abfu abfaa. tabf abfa abfe abfi abfm abfn abfo abfu abfaa. bbabf abfa abfe abfi abfm abfn abfo abfu abfaa.
labf abfa abfe abfi abfm abfn abfo abfu abfaa. babf abfa abfe abfi abfm abfn abfo abfu abfaa. cabf abfa abfe abfi abfm abfn abfo abfu abfaa. dabf abfa abfe abfi abfm abfn abfo abfu abfaa. gabf abfa abfe abfi abfm abfn abfo abfu abfaa. jabf abfa abfe abfi abfm abfn abfo abfu abfaa. pabf abfa abfe abfi abfm abfn abfo abfu abfaa. tabf abfa abfe abfi abfm abfn abfo abfu abfaa. bbabf abfa abfe abfi abfm abfn abfo abfu abfaa.
rabf abfa abfe abfi abfm abfn abfo abfu abfaa. babf abfa abfe abfi abfm abfn abfo abfu abfaa. cabf abfa abfe abfi abfm abfn abfo abfu abfaa. dabf abfa abfe abfi abfm abfn abfo abfu abfaa. gabf abfa abfe abfi abfm abfn abfo abfu abfaa. jabf abfa abfe abfi abfm abfn abfo abfu abfaa. pabf abfa abfe abfi abfm abfn abfo abfu abfaa. tabf abfa abfe abfi abfm abfn abfo abfu abfaa. bbabf abfa abfe abfi abfm abfn abfo abfu abfaa.
sabf abfa abfe abfi abfm abfn abfo abfu abfaa. babf abfa abfe abfi abfm abfn abfo abfu abfaa. cabf abfa abfe abfi abfm abfn abfo abfu abfaa. dabf abfa abfe abfi abfm abfn abfo abfu abfaa. gabf abfa abfe abfi abfm abfn abfo abfu abfaa. jabf abfa abfe abfi abfm abfn abfo abfu abfaa. pabf abfa abfe abfi abfm abfn abfo abfu abfaa. tabf abfa abfe abfi abfm abfn abfo abfu abfaa. bbabf abfa abfe abfi abfm abfn abfo abfu abfaa.
vabf abfa abfe abfi abfm abfn abfo abfu abfaa. babf abfa abfe abfi abfm abfn abfo abfu abfaa. cabf abfa abfe abfi abfm abfn abfo abfu abfaa. dabf abfa abfe abfi abfm abfn abfo abfu abfaa. gabf abfa abfe abfi abfm abfn abfo abfu abfaa. jabf abfa abfe abfi abfm abfn abfo abfu abfaa. pabf abfa abfe abfi abfm abfn abfo abfu abfaa. tabf abfa abfe abfi abfm abfn abfo abfu abfaa. bbabf abfa abfe abfi abfm abfn abfo abfu abfaa.
zabf abfa abfe abfi abfm abfn abfo abfu abfaa. babf abfa abfe abfi abfm abfn abfo abfu abfaa. cabf abfa abfe abfi abfm abfn abfo abfu abfaa. dabf abfa abfe abfi abfm abfn abfo abfu abfaa. gabf abfa abfe abfi abfm abfn abfo abfu abfaa. jabf abfa abfe abfi abfm abfn abfo abfu abfaa. pabf abfa abfe abfi abfm abfn abfo abfu abfaa. tabf abfa abfe abfi abfm abfn abfo abfu abfaa. bbabf abfa abfe abfi abfm abfn abfo abfu abfaa.
ffabf abfa abfe abfi abfm abfn abfo abfu abfaa. babf abfa abfe abfi abfm abfn abfo abfu abfaa. cabf abfa abfe abfi abfm abfn abfo abfu abfaa. dabf abfa abfe abfi abfm abfn abfo abfu abfaa. gabf abfa abfe abfi abfm abfn abfo abfu abfaa. jabf abfa abfe abfi abfm abfn abfo abfu abfaa. pabf abfa abfe abfi abfm abfn abfo abfu abfaa. tabf abfa abfe abfi abfm abfn abfo abfu abfaa. bbabf abfa abfe abfi abfm abfn abfo abfu abfaa.

4

JavaScript(ES6)、130バイト

このエッセイには、すべての火星の手紙で作られた308の異なる単語の辞書から、774の火星の単語が含まれています。

_=>[...Array(2322)].map((_,i)=>['aeimnou','bcdgkpt','fhlrsvz'][i%3][(z=z*71%1e9)%7]+(++i%3?'':i%9?' ':i%27?'. ':`.
`),z=1).join``

文字は、次の式を使用して擬似ランダムに選択されます。

(71^n mod 1000000000) mod 7

where 71は、このモジュロで連続する単語の繰り返しが現れない最小の素数[1]です。


[1]このコードを書いた時点で素数のみをテストしました。最小の非素数候補は56です。


3

Python 3、404 270 332 339 285 266 266 259バイト

これは、火星のアルファベットをランダムにサンプリングし、その後どの単語が機能するかをチェックするランダムな火星のエッセイを作成する試みです。

編集: Zachary Tの使用提案から-10バイトR=range。から-9バイトに変更.intersection(w)&set(w)ます。から-7バイトへの変更A[random.randrange(21)]からrandom.choice(A)

import random
W=[];A="abfechidlmgrnksopvutz";R=range
while len(W)<729:W+=[''.join(random.choice(A)for j in R(9))for i in R(729)];W=[*set(w for w in W if all(set(A[z::3])&set(w)for z in R(3)))]
for j in R(9):print(" ".join(W[81*j+i]+"."*(i%9>7)for i in R(81)))

アンゴルフ

import random
word_list = []
alphabet = "abfechidlmgrnksopvutz"
while len(word_list) < 729:
    # generates words
    for i in range(729):
        word = ""
        for j in range(9):
            word += alphabet[random.randrange(21)]
        word_list.append(word)
    # removes invalid words that don't have at least one letter of each letter type
    kept_words = []
    for word in word_list:
        all_letter_types = [0, 0, 0]
        for z in range(3):
            all_letter_types[z] = set(alphabet[z::3]) & set(word)
        if all(all_letter_types):
            kept_words.append(word)
    word_list = kept_words[:]
    # removes any contiguous word repetitions by removing all repeated words
    word_list = list(set(word_list))
# attaches punctuation and prints
for j in range(9):
    result = []
    for i in range(81):
        word = word_list[81*j+i]
        if i%9 == 8:
            word += "."
    print(" ".join(result))

関数は、ファイル(つまりモジュール)の内容だけである可能性があるため、関数のオーバーヘッドは必要ありません。ランダムにする必要はありません(ただし、モジュールを使用する場合は必要になりますimport
ジョナサンアラン

1
@JonathanAllan私は何かを忘れていたことを知っていました。ヘッドアップをありがとう。とにかくランダムな答えを試してみたかった。編集:奇妙なことに、インポートを追加し、関数オーバーヘッドのインデントレベルを削除すると、互いにキャンセルされます。奇妙な。
Sherlock9

代わりにrange(9)変数に割り当てることでバイトを節約できますか?&.intersection
ザカリー16

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