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

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

2
クイン/エラークインポリグロット
タスクは簡単です。2つの言語で実行できるプログラムを作成します。言語1では通常のクイン(独自のソースコードを出力)、言語2ではエラークイン(独自のソースコードと同じエラーメッセージを生成)である必要があります。 これはcode-golfであるため、最短の有効な送信(バイト単位)が優先されます。 ルール: 言語は任意に似ている場合があります。スーパーセット/類似バージョン/類似方言は禁止されていません。 エラークインのルールは、エラークインの作成と同じです。。

11
テイクバックカウントアルゴリズム
数え方を学んでいる子供は、数字の連続をよく知っていますが、それらの連続を適切にまとめることができないようです。 たとえば、彼らは言うかもしれません: 1,2,3,4,7,8,9,10 時々、子供たちはいくつかの数字をスキップしたことに気づき、戻ってきます: 1,2,3,4,7,8,5,6,7,8,9,10 これは明らかに優れたパターンです。それらを識別する必要があります。 これらのリストを識別するには: リストの最小値Mと最大値を特定しNます リストをステップスルーします。現在の数がその右側のリストのメンバー以上である場合、現在の数を削除します。 残りのリストにからMまでのすべての数値が含まれている場合N、真の値を返します。 入力リストには少なくとも1つの要素が含まれると想定できます。すべての整数が負でないと仮定できます。 テストケース: 真実: 0 10 0 0 0 1 0 1 0 1 2 3 4 5 6 7 8 9 10 0 1 2 3 0 1 2 3 0 1 2 3 4 5 5 0 1 1 …

9
奇数オッズを見つける
妥当な入力メソッドによって正の整数の順不同のコレクションが与えられた場合、奇数個の奇数要素を持つ(つまり、合計が奇数である)すべてのサブコレクションを返します。 これはコードゴルフなので、プログラムのバイトカウントを最小限に抑えることを目指してください。 一部の言語には順序付きコレクション(リスト、配列、ベクトルなど)のみがあるか、重複を許可する順序なしコレクションがないため、言語コレクションに関係なく順序付きコレクションを使用できますが、重複コレクションは出力しないでください。異なる順序([2,3]およびなど[3,2])。適切な順序で出力できます。 テストケース [2,3,7,2] -> [[3],[7],[2,3],[2,7],[2,2,3],[2,2,7]] [2,4,6,8] -> [] [4,9] -> [[9],[4,9]]

15
発音番号
概念 数字を覚えるのは難しい場合があります。単語を覚える方が簡単かもしれません。大きな数字を記憶するために、私はそれらをリーツピークのような方法で発音する方法を作りました。 ルール 各数字は、最初に対応する文字に置き換えられます。 0 => O 1 => I 2 => R 3 => E 4 => A 5 => S 6 => G 7 => T 8 => B 9 => P 置換後、発音を改善するために2つの追加処理が行われます。 2つの子音の間に、a Uが追加されます。 2つの母音の間に、a Nが追加されます。 例/テストケース 512431 => SIRANENI 834677081 => BENAGUTUTOBI 3141592 => ENINANISUPUR 1234567890 …
14 code-golf  number 

30
配列のスカラーをランダム化します
配列にはすべての数値を0-n含める必要があります。数字は繰り返さないでください。ただし、それらはランダムな順序でなければなりません。 ルール すべての標準コードゴルフ規則と標準抜け穴が禁止されています 配列は擬似ランダムに生成する必要があります。可能なすべての順列は、等しい確率を持つ必要があります。 入力 n メタのI / O投稿で許可される方法。 出力 スクランブルされた数値の配列0-n。
14 code-golf  random 

2
あのポリゴンは誰ですか?
トポロジカルサーフェスを表す便利で便利な方法は、基本ポリゴンを使用することです。多角形の各辺は別の辺と一致し、平行または反平行のいずれかになります。たとえば、これはトーラスの基本的なポリゴンです。 これがトーラスである理由を理解するために、ポリゴンが紙であると想像できます。適切な表面を作成するために、対応するエッジが矢印が同じ方向に並ぶように紙を曲げます。トーラスの例では、紙を円柱に丸めて、2つの青いエッジ(ラベルb)を接続することから始めます。次に、チューブを取り出して曲げて、2つの赤いエッジ(a)が互いに接続するようにします。トーラスとも呼ばれるドーナツ型にする必要があります。 これには少し注意が必要です。エッジの1つが反対方向に向いている次のポリゴンで同じことをしようとすると: トラブルに巻き込まれる可能性があります。これは、このポリゴンが3次元に埋め込むことができないクラインボトルを表しているためです。このポリゴンをクラインボトルに折り畳む方法を示すウィキペディアの図を次に示します。 ご想像のとおり、ここでのタスクは、基本的なポリゴンを取得し、どのサーフェスであるかを判断することです。4面ポリゴン(処理する必要がある唯一のサーフェス)には、4つの異なるサーフェスがあります。 彼らです トーラス クラインボトル 球 射影平面 これは画像処理ではないので、入力として画像を受け取るとは思わないが、代わりに便利な表記法を使用して基本ポリゴンを表現します。上記の2つの例で、同じ文字(aまたはb)で対応するエッジに名前を付け、ねじれたエッジにねじれを示す追加のマークを付けたことに気付いたかもしれません。時計回りに進んで、上端から開始して各端のラベルを書き留めると、各基本ポリゴンを表す表記を取得できます。 たとえば、提供されたトーラスはababになり、クラインボトルはab - abになります。私たちの挑戦では、ねじれたエッジをネガでマークする代わりに、文字を大文字にします。 仕事 文字列が与えられると、それが基本ポリゴンを表すかどうかを判断し、その適切な表面に対応する値を出力します。サーフェスに正確な名前を付ける必要はありません。それぞれが4つのサーフェスの1つを表す4つの異なる出力値を必要とし、5番目の値が不適切な入力を表します。すべての基本的なケースは「簡単なテスト」セクションで説明されており、すべての車は、1つまたは無効な車と同形です。 ルール 側面には常にaおよびbのラベルが付けられるわけではありませんが、常に文字でラベルが付けられます。 有効な入力は、4つの文字で構成され、2つのタイプと2つのタイプがあります。有効な入力を得るには、常に正しいサーフェスを出力する必要があります。 無効な入力は拒否する必要があります(サーフェスを表す4つの値のいずれも出力しません)。4つのサーフェスと区別できる限り、入力を拒否するときに何でもできます。 これはコードゴルフなので、目標はソースコードのバイト数を最小限にすることです。 テスト 簡単なテスト abab Torus abAb Klein Bottle abaB Klein Bottle abAB Projective Plane aabb Klein Bottle aAbb Projective Plane aabB Projective Plane aAbB Sphere abba Klein Bottle abBa Projective …

19
フィボナッチ化された除数を合計します!
有名なフィボナッチ数列はF(0) = 0; F(1) = 1; F(N+1) = F(N) + F(N-1)(このチャレンジでは0から始まります)です。 あなたの挑戦:考えるとnは、出力のすべての合計Dすべての除数のためのフィボナッチ数番目日間のN番目のフィボナッチ数。より正式な表記を希望する場合は、 入力:正の整数n 出力:合計 たとえば、検討してくださいn=4。F(4) = 33の約数は1と3なので、出力はになるはずですF(1) + F(3) = 1 + 2 = 3。 用n=6、F(6) = 8および8の除数1、2、4、8、であるので、出力されますF(1) + F(2) + F(4) + F(8) = 1 + 1 + 3 + 21 = 26。 テストケース: 1 => 1 2 => …

15
最大相互共素因数分解
定義 唯一の正の公約数がの場合、2つの数値は互いに素です1。 数字のリストは、そのリスト内の数字のすべてのペアが互いに素である場合、相互に素です。 数の因数分解 n、積がである数値のリストですn。 仕事 正の数nを指定するnと、次を含まない最大長の相互に素な因数分解を出力します1。 例 の場合n=60、答えは[3,4,5]で3*4*5=60あり、それ以外の互いに素な因数分解1は長さが以上であるため3素因数分解は、分解の長です。 ルールと自由 適切な入出力形式を使用できます。 出力リストのエントリをソートする必要はありません。 テストケース n output 1 [] 2 [2] 3 [3] 4 [4] 5 [5] 6 [2, 3] 7 [7] 8 [8] 9 [9] 10 [2, 5] 11 [11] 12 [3, 4] 13 [13] 14 [2, 7] 15 [3, 5] …

8
到達可能な番号
定義 オイラーファイ関数(aka totient function):正の数を取り、特定の数と互いに素である特定の数より小さい正の数を返す関数。として示されφ(n)ます。 到達番号:正の整数が存在する場合x、その結果をφ(x) == n、その後nで到達可能。 仕事 与えられた正の整数が到達可能かどうかを判断する関数/プログラムを作成します。 入力 妥当な形式の正数。数は言語の能力の範囲内であると想定できます。単項入力が受け入れられます。 出力 到達可能な数値用と到達不能な数値用の2つの一貫した値。2つの値は、一貫している限り、何でもかまいません。 テストケース 以下の到達可能な番号100は次のとおりです。 1、2、4、6、8、10、12、16、18、20、22、24、28、30、32、36、40、42、44、46、48、52、54、56、58、 60、64、66、70、72、78、80、82、84、88、92、96 (OEISのA002202) ルール 標準の抜け穴が適用されます。 勝利基準 これはcode-golfです。最も少ないバイト数での送信が優先されます。 参照資料 オイラーファイ関数 OEIS A002202

25
分数を追加する
入力と同じ長さの2つの空でないリストを取り、次のことを行うプログラムまたは関数を作成します。 最初のリストの要素を使用して分子を取得し、 2番目のリストの要素を使用して分母を取得し、 (2/4=>1/2)「+」で区切られた、簡略化後の結果の小数部を表示します。 最後の小数部の後に「=」と加算結果を表示します。 例: 入力 [1, 2, 3, 3, 6] [2, 9, 3, 2, 4] 出力 1/2+2/9+1+3/2+3/2=85/18 ルールについて リストの要素は正の整数になり、 要素はスペースで区切ることができます。たとえば:1/2 + 2/9 + 1 + 3/2 + 3/2 = 85/18is ok、 末尾の改行は許可されますが、 リストは、上記以外の形式で取得することもできます(例:(1 2 3 3 6)または{1;2;3;3;6}など)。 1表すことができ1/1、 印刷する代わりに、適切な文字列を返すことができます。 間違った入力を処理する必要はありません。 最短コードが勝ちます。

23
2つの6面ダイスの100ロールの合計
2つの6面ダイスがあるとします。ペアを100回ロールして、各ペアの合計を計算します。各合計が発生した回数を印刷します。合計がロールされなかった場合、その特定の合計がロールされなかったことを識別するゼロまたは何らかの方法を含める必要があります。 出力例:[3、3、9、11、15、15、15、11、15、7、8、3] 合計がロールされた回数は、合計インデックス-2で表されます。 この例では、合計2回が3回([2-2])、合計3回が3回([3-2])、合計が4回9回([4-2])などでした。オン。個々のサイコロの出目が合計に達することは問題ではありません(5と2は6と1と同じ合計としてカウントされます) データの読み取り方法を説明する限り、「Uい」出力は問題ありません(末尾のゼロの負荷、余分な出力、データの奇妙な表現方法など)。

4
有限グループのサブグループの数を見つける
定義 グループの定義が既にわかっている場合は、この部分をスキップできます。有限グループ、およびサブグループの。 グループ 抽象代数では、グループはタプル(G、∗)です。ここで、Gは集合であり、∗は関数G×G→Gです。次のようなです。 閉包:Gのすべてのx、yについて、x ∗ yはGにもあります(∗が関数G×G→Gであるという事実によって暗示されます)。 連想:すべてのためのX、Y、ZにおけるG、(X * Y)* Z = X *(Y * Z) 。 同一性:要素が存在するEにおけるGのようにすべてのためのxにおけるG、X * E = X = E * X。 逆:毎XにおけるG、要素が存在するYはでGように、X * Y = E = Y * X、E前の箇条書きに記載された同一要素です。 有限グループ 有限群の基である(G、*)G、有限であるすなわち、有限個の要素を有します。 サブグループ サブグループ (H *)グループの(G、*)があるようであり、Hは、の部分集合であるG(必ずしも適切ではないサブセット)および(H *)、グループ(すなわち、満足4つの基準を超える)です。 例 検討二面体群のD 3 (G、*)G = {1、A、B、C、D、E}及び*は以下に定義されているが(このようなテーブルが呼び出されケーリーテーブル): ∗ | …

5
すべてのBrain-Flakスニペットを生成する
この質問は、Brain-Flakの最初の誕生日を祝うために設計されたいくつかのBrain-flak Birthdayチャレンジの2番目です!Brain-Flakの誕生日の詳細については、こちらをご覧ください。 チャレンジ この課題では、括弧のリストから完全に一致するすべての文字列を生成します。完全に一致する文字列のDJMcMayhemの定義を借用するには: この課題のために、「括弧」は次の文字のいずれかです()[]{}<>。 次のように、開始ブラケットと終了ブラケットが正しい順序であり、中に文字がない場合、一対のブラケットは「一致」とみなされます。 () []{} または、その中のすべてのサブ要素も一致する場合。 [()()()()] {<[]>} (()()) サブエレメントは、いくつかのレイヤーの深さにネストすることもできます。 [(){<><>[()]}<>()] <[{((()))}]> ブラケットの各ペアに正しい順序で正しい開始ブラケットと終了ブラケットがある場合にのみ、文字列は「完全一致」と見なされます。 入力 プログラムまたは関数は、便利で一貫した形式の4つの非負数のリストを受け取ります。これには、整数のリスト、数字で区切られていない文字列、または個別の引数が含まれます(ただし、これらに限定されません)。これらの4つの数字は、各タイプのブラケットの一致したペアの数を表します。たとえば、次[1,2,3,4]を表します。 1ペア () 2組の {} 3組[]と 4ペア <> 一貫性がある限り、各入力に対応するブラケットのペアを選択できます。 出力 この括弧のリストから重複なく形成できる、完全に一致したすべての文字列を出力する必要があります。出力は、括弧で区切られていない文字列をSTDOUTに出力したり、文字列のリストを関数からの戻り値として出力したりするなど、妥当な形式で出力できます。 アルゴリズムは任意の入力に対して機能する必要がありますが、メモリ、時間、整数サイズの制限について心配する必要はありません(たとえば、答えがCの場合、入力として2 33を取得しません)。 これはcode-golfであるため、バイト単位の最短回答が優先されます。 入力と出力の例 これらの例では、上記と同じ入力順序を使用します。 各例では、最初の行が入力され、次の行が出力になります Example 0: [0,0,0,0] Example 1: [1,0,0,0] () Example 2: [0,2,0,0] {}{} {{}} Example 3: [0,0,1,1] []<> …

9
キーボードレイアウトの課題
一般的に使用されるキーボードレイアウトは、以下に示すQWERTYレイアウトです。 しかし、他のキーボードレイアウトもあります。 DVORAK コレマック 職人 あなたのタスク コードは、キーボードレイアウトの名前と、文字起こしする文字列の2つの入力を受け取ります。あなたの目標は、QWERTY入力を、最初のパラメーターとして指定されたキーボードレイアウトで入力しているかのように変換することです。 ルール 入力形式は無料です。文字列、配列などを使用できます。さらに、3つの異なる値を使用してレイアウトを表現し、バイト数を減らすことができますが、それぞれ10バイト以下で表現できる必要があります。 背景が白いキーのみを処理する必要があります。具体的には、印刷可能なASCII文字をQWERTYアルファベットから他のアルファベットのいずれかに転置する必要があります。 QWERTY: !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ DVORAK: !_#$%&-()*}w[vz0123456789SsW]VZ@AXJE>UIDCHTNMBRL"POYGK<QF:/\=^{`axje.uidchtnmbrl'poygk,qf;?|+~ COLEMAK: !"#$%&'()*+,-./0123456789Oo<=>?@ABCSFTDHUNEIMKY:QPRGLVWXJZ[\]^_`abcsftdhuneimky;qprglvwxjz{|}~ WORKMAN: !"#$%&'()*+,-./0123456789Ii<=>?@AVMHRTGYUNEOLKP:QWSBFCDXJZ[\]^_`avmhrtgyuneolkp;qwsbfcdxjz{|}~ (注:これは@ETHproductionsによって手作業で転写されたものですので、エラーを見つけた場合は指摘してください!) 例 DVORAK zZxX 入力として出力として与える ;:qQ これはコードゴルフなので、バイト単位の最短回答が勝ちです!

9
11のないパリンドローム素数
偶数桁のパリンドロームは11で割り切れるので、偶数桁の唯一の[回文素数]が11です。- デイビスワッサーマン、OEIS 私は今日、これを手作業で学びました。調査を行う前に、パリンドローム素数の計算時にプログラムが偶数桁(11を除く)の数値をスキップしたときです。あなたのタスク:整数入力Nが与えられると、StephenのPalindromic Sequence™のN番目の項を出力するプログラムまたは関数を作成します。 スティーブンのパリンドロームシーケンス™ StephenのPalindromic Sequence™は11で始まり、11で割り切れるパリンドローム セミプライムで続行します。基本的に、11が「カウント」されなかった場合にプライムになるすべてのセミプライム。利点は、このリストに偶数桁の数字が含まれていることです!わーい。また、奇数の桁を持つ多くの数字は、既に素数であるためスキップされます。 シーケンスの始まり: 1 : 11 2 : 22 3 : 33 4 : 55 5 : 77 6 : 121 7 : 737 8 : 979 9 : 1111 10 : 1441 11 : 1661 12 : 1991 13 : 3113 14 : …

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