タグ付けされた質問 「code-golf」

コードゴルフは、ソースコードの最小バイトで特定の問題を解決するための競争です。

4
区別できない3つのサイコロ
3つのサイコロ(1〜6の整数値)をソートされた順に(区別できないように)与え、それらを同一の分布を持つ2つの公平なサイコロの合計に変換します。 3対1の答えは、6を法としてそれらすべてを合計することです。最終結果は、完全にフラットな分布であり、6つの数値のそれぞれが等しくなる可能性があります(単一のダイのように)。 6を法としてすべてを合計することにより、3対1でこれを行うのは簡単です。最終結果は完全にフラットな分布になり、6つの数字のそれぞれが(単一のダイのように)等しくなります。あなたの課題は、3対2で同じことをすることです。 standupmathのThe Three Indistinguishable Dice Puzzleに触発されました。フォローアップの「ソリューション」ビデオも投稿されましたが、何らかの形で「優雅さ」について議論するのは少し主観的です。文字のカウントはそうではありません。:D 説明書 3つのソートされた整数/桁1〜6 を受け入れ、単一の整数2〜12を出力または返すプログラムまたは関数を作成します。 222222 333333333333 444444444444444444 555555555555555555555555 666666666666666666666666666666 777777777777777777777777777777777777 888888888888888888888888888888 999999999999999999999999 AAAAAAAAAAAAAAAAAA BBBBBBBBBBBB CCCCCC (16進数を使用して単一の文字を保持しました。10進数の出力は問題ありません) サイコロは見分けがつかないので、サイコロに固有の順序はありません。したがって、ソートされた入力です。単純に「3番目を落とす」ことはできません。それは曖昧だからです。 詳細 スコアはプログラムのバイト単位の長さです プログラムは、なんらかの方法で呼び出される関数、またはstdinから読み取る実行可能なスクリプト、または任意の便利なものにすることができます。 別のソースからエントロピーを取得することによる「リローリング」なし 例(およびテスト) あらゆる種類の確率的テストを行うのではなく、3つのサイコロすべての216(6³)ケースをリッピングして、関数が必要な回数だけ各値を返すと断言するのは簡単です。同一のパラメーターで呼び出されます(例えば、ケース1, 2, 3と3, 2, 1、...は区別できないと推定され、(任意に)に変換されます1, 2, 3)。 回答の例(非常にブルートフォースで非効率的)とテストスイートをPythonで以下に示します。テストビットがあなたの選択した言語に移植するのに十分明確であることを願っていますが、stdin / stdoutを行うことは少し異なります。テストコードはテスト用であり、スコアは付けられません(ただし、言語またはI / Oメソッドの他のユーザーに提供する場合は便利です)。 # 6x6 lists of numbers with digits sorted LUT …
12 code-golf  number 

30
周りのヘビ
チャレンジ 課題は簡単です。蛇を印刷します。 入力として蛇の長さを取得します。 長さ2のヘビは次のようになります。 ==(:)- 長さ7のヘビは次のようになります。 =======(:)- 言い換えれば、蛇の長さは頭の前に等号がいくつあるかということです。 使用法 C ++実装を作成してにコンパイルしたとしましょう./getsnake。 次のように実行できます。 $ ./getsnake 10 ==========(:)- 明確化 標準の抜け穴は許可されていません。 受け入れ可能な方法で入力と出力を取得できます。 与えられた入力はすべて正の整数であると仮定できます。 通常のプログラムの代わりに関数を書くことができます。

5
ASCIIでクリベッジスコアを表示する
クリベッジは面白いゲームです。ゲームを獲得するには特定のボードが必要だからです。クリベッジボードは次のようになります。 最初の列が上に行くと左側に、次に下に行くと右に、そして再び上に行くと左に戻ることに注目してください。 そして、これは、不十分に描かれたクリベッジボードのASCIIアートの外観です。 * * * ----------- ------- / * \ |*|*|*| /* * *\ |*|*|*| / * * * \ |*|*|*| | * * | |*|*|*| |* * * * * *| |*|*|*| ------- ------- ------- |*|*|*| |*|*|*| |*|*|*| |*|*|*| |*|*|*| |*|*|*| |*|*|*| |*|*|*| |*|*|*| |*|*|*| |*|*|*| |*|*|*| |*|*|*| …

1
正方形はいくつありますか?
この課題は、のように見えることが多いFacebook上でローミングする絵に触発され、この。ベーススクエアが次のようになることを除きます。 ┌─┬───┬─┐ ├─┼─┬─┼─┤ ├─┼─┴─┼─┤ ├─┼─┬─┼─┤ └─┴─┴─┴─┘ 正方形はn x m1x1の正方形で構成されているため、その正方形に収まるサブ正方形(1x1、2x2、3x3、4x4、5x5など)の数を数える必要があります。正方形には、いくつかのグリッド線が欠落している場合があります(上記の例のように)か、下の例のように完全になります。これは数学的な故障があることを意味しません(私の知る限り)可能。 入力: n正方形を構築するための入力の行数()。 :次の文字から作られた正方形の─ ┐ ┌ └ ┴ ┘ ┬ ├ ┤ ┼ |間でnの入力のライン。 出力: 入力正方形に収まる任意のサイズの正方形の量(ここでは、各サイズの数値ではなく、1つの数値のみが必要です)。 受賞基準: 最小の回答(バイト数)が優先されます。 テストケース: に: 5 ┌─┬─┬─┬─┐ ├─┼─┼─┼─┤ ├─┼─┼─┼─┤ ├─┼─┼─┼─┤ └─┴─┴─┴─┘ アウト: 30 に: 3 ┌─┬─┐ ├─┼─┤ └─┴─┘ アウト: 5 に: 5 ┌─┬─┐ ├─┴─┤ ├───┤ ├─┬─┤ └─┴─┘ …

2
回転に対して安全なラテン方格
ラテン方陣は、X列またはY列のいずれにも繰り返されるシンボルがない正方形です。例えば: ABCD DABC CDAB BCDA そのような正方形の一つです。すべての列と行に同じ4文字の順列が含まれていることに注意してください。 しかし、ラテン方陣には問題があります 。2番目の行(DABC)1を左に回転させるとABCD、上の順列と同一ので終わることになります。1列/行を回転して別の列/行を取得する ことが不可能な場合、正方形は回転しても安全であると見なします。 例えば: ABCD BDAC CADB DCBA 回転は安全です。グリッドには次のプロパティがあります。 ポイント[0、N]はN番目のシンボルを使用します ポイント[0、N]と[N、0]は常に同じシンボルです。([x、y]と[y、x]も常に同じ文字であると言いたいのですが、証明できません) あなたの仕事は、N を渡したときに1つの回転安全なラテン方陣を印刷することです。文字、数字、リスト、または2D配列を出力してもかまいません。 数字を使用する場合、一番上の列と行は0,1,2,3,...(この順序で)なければなりません。文字を使用する場合は、A,B,C,D,.... たとえば、入力が4の場合、次のいずれかを印刷する必要があります。 0,1,2,3 0,1,2,3 1,3,0,2 or 1,0,3,2 2,0,3,1 2,3,1,0 3,2,1,0 3,2,0,1 サイズが4未満の回転に対して安全なラテン方陣はありません。Nが4より小さい場合、プログラムが何をするかは気にしません。 2,5,5906,(too long to calculate) これはコードゴルフですので、お気に入りの言語でできるだけ短く答えるようにしてください!

13
ツリーモートを育てよう!
これは私の友人トーマスです。彼は半分の木、半分顔文字です。 | | | :D | | | 彼は孤独です。彼に友達を作ろう! 入力としてテキストベースの絵文字を所定の(例えばಠ_ಠ、:P、>_>、ではない😀、🤓または🐦)、出力対応treemote。 treemoteの長さは、lonの文字数です(基本的に、文字列のほとんどの組み込みの長さ関数)。だから、ಠ_ಠ長さ3を有しています。 長さのツリーモートの構文nは次のとおりです。 |< 2+n spaces>| * ceil(n/2) | <emote> | (note the spaces) |< 2+n spaces>| * ceil(n/2) したがって、長さ3のツリーモートは次のようになります。 | | | | | ಠ_ಠ | | | | | 彼がしているceil(n/2)改行は、両側に各トランクセグメントを分離2 + n内部のスペースを。 課題:テキストベースの絵文字を指定して、対応するツリーモートを出力します。 その他の規則: これはcode-golfです。つまり、短いコードを書いてほしいのです。 標準の抜け穴は許可されません。 言語で処理できない場合を除き、非ASCII文字をサポートする必要があります。 テストケース: ^_^ …

3
それらを最小化する[非公開]
閉まっている。この質問はトピック外です。現在、回答を受け付けていません。 この質問を改善したいですか? 質問を更新することがありますので、上のトピックコードゴルフスタックExchange用。 3年前に閉店しました。 あなたの仕事はものの数が最も少ないと演算子のみ使用して自然数構築することである+かを-。たとえば、7という数字を書く1+1+1+1+1+1+1=7こともできますが、と書くこともできます11-1-1-1-1=7。7前者は1を使用し、後者はのみを使用し6ます。あなたのタスクは、何らかの自然数の入力が与えられたときに使用できるものの最小数を返すことnです。 これはコードゴルフであるため、バイト単位の最短の有効なコードが優先されます。 テストケース 入力=>出力 0 => 2 (since 1-1=0) 7 => 6 121 => 6 72 => 15 1000 => 7 2016 => 21

3
Laverテーブルの計算とZFCで終了することが知られていないアルゴリズム
海苔テーブルは数学の標準公理システムに終了することが示されていないプログラムの例を提供ZFC 1は非常に巨大基数公理を前提としたときに終了しますけど。 前書き 古典的なLaverテーブルは、基になるセットと、アイデンティティーを満たし、どこで、どこで満たす操作を行うユニークな有限代数です。An{1,...,2n}*x * (y * z)=(x * y) * (x * z)x*1=x+1x<2n2n*1=1 古典的な海苔テーブルの詳細については、Patrick Dehornoyの書籍Braids and Self-Distributivityを参照してください。 チャレンジ 1*32従来のLaverテーブルで計算し、nwith が見つかったときに正確に終了する最短のコード(バイト単位)は何ですか?言い換えると、with が見つかった場合にのみプログラムは終了しますが、それ以外の場合は永久に実行されます。1*32<2nn1*32<2n 動機 ランクにランクカーディナル(また、I3-カーディナルと呼ばれる)は、非常に大きい無限のレベルと1つのランクにランクカーディナルの存在を前提とした場合、その後、一つ一つがない場合よりも多くの定理を証明することができますランクからランクへの枢機existenceの存在を想定します。ランクからランクへの枢機inalが存在する場合、古典的な海苔の表があります。ただし、ZFCでの既知の証拠はありません。さらに、最小の場所がより大きいことが知られています(アッカーマン関数は急速に成長する関数であるため、これは非常に大きな数です)。したがって、このようなプログラムは非常に長い時間続きます。An1*32<2n1*32<2nn1*32<2nAck(9,Ack(8,Ack(8,254)))Ack プログラムが標準の公理システムZFCを使用して終了するかどうかはわからないが、プログラムが最終的にはるかに強力な公理システム、つまりZFC + I3で終了することがわかるように、プログラムがどれくらい短く書けるかを見たいです。この質問は、スコットアーロンソンの最近の投稿に触発されたもので、アーロンソンとアダムイディディアが8000未満の状態でチューリングマシンを構築したため、ZFCはチューリングマシンが終了しないことを証明できませんが、大きな基数仮説を仮定しても終了しないことがわかっています。 古典的な海苔表の計算方法 海苔のテーブルを計算する場合には、代数であるという事実を使用することが通常便利である、我々が持っているすべてのためにあるの。An2n * x=xxAn 次のコードは、古典的な海苔表を計算します An #table(n、x、y)はA nに x * yを返します table:= function(n、x、y) x = 2 ^ nの場合、yを返します。 elif y = 1の場合、x + …

7
ヨルフでのゴルフのヒント
Jolfは、@CᴏɴᴏʀO'Bʀɪᴇɴによって作成された手続き型ゴルフ言語です。 ジョルフでゴルフをするためのヒントはありますか? 回答ごとに1つのヒントを投稿してください。 これらのヒントは、少なくともある程度Jolfに固有のものである必要があります。たとえば、コメントを削除することは答えですが、あまり良いものではありません。
12 code-golf  tips 

6
私の文字列はどの程度互換性がありますか?
前書き 同じ長さLの 2つの文字列AとB、および整数K≥0を考えます。このチャレンジのために、Aが連結BCBの連続した部分文字列であるような長さKの文字列Cが存在する場合、文字列はK互換であると言います。AはBABのサブストリングであるため、AとBは常にL互換であることに注意してください(ただし、他のK <Lに対してK互換である場合もあります)。 入力 入力は、大文字と小文字のASCII文字で構成される、同じ正の長さの2つの文字列です。 出力 出力は、入力がK互換であるように、最小の非負整数Kでなければなりません。 例 入力を検討する A = HHHHHH B = HHttHH Aはの部分文字列ではないため、これらは0互換ではありませんHHttHHHHttHH。また、AはHHttHH#HHttHHどの文字がに​​配置されていてもサブストリングではないため、1互換ではありません#。ただし、A であるのサブストリングHHttHHHHHHttHH、Cは二文字列ですHH。したがって、入力は2互換であり、正しい出力は2です。 ルールとスコアリング 完全なプログラムまたは関数を作成できます。最小のバイトカウントが優先され、標準の抜け穴は許可されません。 テストケース 互換性条件は対称的であるため、2つの入力を交換しても出力は変更されません。 E G -> 1 E E -> 0 aB Bc -> 1 YY tY -> 1 abcd bcda -> 0 abcXd bxcda -> 4 Hello Hello -> 0 …
12 code-golf  string 

10
区別できないアイテムの順列
整数のリストを指定すると、整数の順列の数を出力し、区別できない順列を1回カウントします。ある場合はn整数であり、区別がつかない数字の各グループは、長さを持っているn_i、これはありますn! / (n_1! * n_2! * ...) ルール 入力は、1から12個の非負整数を持つ関数またはプログラムの引数としての何らかの形式のリストになります。 出力は、上記のように順列の数を印刷または返します。 標準的な抜け穴や組み込み関数(順列、組み合わせなどの生成)はありません。階乗が許可されます。 テストケース 入力: 1, 3000, 2, 2, 8 1, 1, 1 2, 4, 3, 2, 3, 4, 4, 4, 4, 4, 1, 1 出力: 60 1 83160

9
10進数表現の繰り返しを見つけてください!
で、この挑戦 2年前、我々が見つかりました。期間(単位分数のを1/n where n is a natural number)。 さて、あなたの仕事は単位分数の繰り返しを見つけるプログラム/関数を書くことです。 repetendは同様に、無限に繰り返される小数展開の一部です: の10進表現は1/6です0.16666...、それからrepetendは6です。 の10進表現は1/11です0.090909...、それからrepetendは09です。 の10進表現は1/28です0.0357142857142857142857...、それからrepetendは571428です。 スペック 妥当な形式で入力してください。 繰り返しを10進数、文字列、またはリストで出力します。 1/7(0.142857142857...)については、出力する必要があります142857代わりに428571。 1/13(0.076923076923076923...)、あなたは出力しなければならない076923代わりに、76923。 総当たりはしないでください。 テストケース Input Output 1 0 2 0 3 3 7 142857 13 076923 17 0588235294117647 28 571428 70 142857 98 102040816326530612244897959183673469387755 9899 000101020305081321345590463683200323264976260228305889483786241034447924032730578846348115971310233356904737852308313971108192746742095161127386604707546216789574704515607637135064147893726639054449944438832205273259925244974239822204263056874431760783917567431053641781998181634508536215779371653702394181230427315890493989291847661379937367410849580765733912516415799575714718658450348520052530558642287099707041115264168097787655318719062531568845337912920497019901 得点 これはコードゴルフですです。バイト単位の最短ソリューションが勝ちます。 目標は最短のソリューションを作成できる言語を見つけることではなく、各言語で最短のソリューションを見つけることであるため、答えは受け入れられません。 リーダーボード コードスニペットを表示 var QUESTION_ID=78850,OVERRIDE_USER=42854;function answersUrl(e){return"http://api.stackexchange.com/2.2/questions/"+QUESTION_ID+"/answers?page="+e+"&pagesize=100&order=desc&sort=creation&site=codegolf&filter="+ANSWER_FILTER}function …

3
どのスイッチがオンになっていますか?
前書き あなたは同僚と一緒に座って、昼食をとり、あなたが取り組んでいると思われる最新の、おそらく最高のプロジェクトについて同僚に自慢しています。エゴイズムの絶え間ないショーケースにうんざりして疲れて、彼/彼女はあなたが黙ってしまうようにあなたに挑戦を与えます。あなたがエゴイスティックで幸せな幸運な人であることはもちろん受け入れます(あなたはそれぞれの挑戦をすべて受け入れなければならないからです)。挑戦、彼/彼女はそれが説明しているように、与えられた入力に各文字の1以上を含むテキストのブロックのを!@#$^&*、出力される任意の合理的な形式でのスイッチの座標(ES)/「オン」です。 同僚による$と、スイッチはであり、次の基準の少なくとも1つを満たす場合にのみ、スイッチは「オン」として分類されます。 すべてに囲まれています^。そう... ^^^ ^$^ ^^^ 「オン」スイッチになります。 すべてに囲まれています&。そう... &&& &$& &&& 「オン」スイッチになります。 少なくとも 2つの側面がで完全に覆われてい*ます。例えば、 *** &$& *** 「オン」スイッチになりますが、 &*& &$& &*& スイッチはs によって両側が完全に覆われていないため、そうではありません*。 周囲のどのコーナーにも少なくとも1 !つまたは1つ@、あるいはその両方があります。これらのいずれかがコーナーにない場合、これはカウントされません。そう... !&& ^$@ @&! 少なくとも1 !つまたは@少なくとも1つのコーナーがあるため、「オン」スイッチになります(上記の場合、2つの有効な!sと@3つのコーナーで有効な1つがあります)。そして... &!& ^$@ ^!& 2 sと1 がありますが、どのコーナーにもありませんので、そうではありません。!@ 1以上が#あるないに任意の少なくとも1がない限り、スイッチの周囲側面&スイッチを取り囲んでいます。つまり、#側面に少なくとも1つ存在する場合、存在する場合を除き、他のすべてのルールをオーバーライドします&。したがって: #&* *$* !** スイッチは「オン」になりますが、aは#存在しますが、&aroundスイッチがあるため、上記のルールの少なくとも1つに従います。ただし、感嘆符が次のように存在しない場合: #&* *$* *** 上記のルールの少なくとも1つに従わないため、スイッチはオフになります。したがって、スイッチがa #およびa &で囲まれている場合でも、これらの規則の1つ以上に従わない限り、スイッチはオフのままです。また、スイッチを有効にするには、sとsの比率が常に 1:1以上でなければなりません。例えば、&# #&! …
12 code-golf  string 

2
ストローポールを作る
Strawpollsは素晴らしく、物事に関する意見を得るために常にチャットで使用しています。しかし、それらを作成するにはWebブラウザーが必要なので、作成するのは面倒です。また、私はSE APIとcurlを介してのみPPCGにアクセスすることを誰もが知っています。だから、StrawpollのAPIを使用するコードを書いてほしいをして、指定されたオプションでwithを作成するを作成してほしい。 スペック 入力として、文字列としてオプションの適切な形式のリストと、文字列でもあるタイトルを取ります。次に、APIを使用して、そのタイトルとそれらのオプションでstrawを作成し、URLを出力します。 倍数は許可されるべきではなく、重複チェックは実施されるべきであり、キャプチャは必要ではありません。 例 "My Awesome Poll" ["option 1", "I like pies", "I also like cakes"] 出力:http : //strawpoll.me/7275997 これはcode-golfなので、バイト単位の最短コードが勝ちです!

23
多角形の数字
多角形の数は、kサイズの1角形のドットの数ですn。 とが与えられn、kあなたの仕事は、対応する番号を出力/印刷するプログラム/関数を書くことです。 得点 これはcode-golfです。バイト単位の最短ソリューションが勝ちです。 例 3RD六角数は(k=6, n=3)で28あるので、28上記のドットが。 テストケース このPythテストスイートから生成できます。 使用法:テストケースごとに2行、n上、k下。 n k output 10 3 55 10 5 145 100 3 5050 1000 24 10990000 さらに詳しい情報 ウィキペディア:https : //en.wikipedia.org/wiki/Polygonal_number Wolfram Mathworld:http : //mathworld.wolfram.com/PolygonalNumber.html OEIS Wiki:http : //oeis.org/wiki/Polygonal_numbers さまざまなnのn対角数のOEISシーケンス:3 (A000217)、4 (A000290)、5 (A000326)、6 (A000384)、7 (A000566)、8 (A000567)、9 (A001106)、10 (A001107)、11 (A051682)、12 (A051624)、13 (A051865)、14 (A051866)、15 …

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