タグ付けされた質問 「integer-partitions」

正の整数の合計として整数を表現するさまざまな方法に関連する課題。

23
よ少年、それを合計する必要があります
すべての正の整数は、任意ベースで最大で3つの回文正の整数の和として表すことができるBの ≥5。 Cilleruelo et al。、2017 正の整数は、先行ゼロなしでそのベースでの表現が同じ逆方向を読み取る場合、特定のベースでパリンドロームです。以下では、ベースb = 10 のみが考慮されます。 回文数の合計としての分解は一意ではありません。たとえば、5は5、またはの合計として直接表現できます2, 3。同様に、またはとして132分解できます。44, 44, 44121, 11 挑戦 正の整数を指定すると、10を基数とするパリンドロームの3つ以下の正の整数にその合計分解を生成します。 追加のルール 使用されるアルゴリズムは、任意の大きな入力に対して機能するはずです。ただし、プログラムがメモリ、時間、またはデータ型の制限によって制限されている場合は許容されます。 どんな合理的な手段でも入出力を取ることができます。入出力形式は通常どおり柔軟です。 出力形式が明確である限り、各入力に対して1つ以上の有効な分解を生成することを選択できます。 すべてのプログラミング言語で、プログラムまたは機能が許可されます。標準的な抜け穴は禁止されています。 バイト単位の最短コードが優先されます。 例 入力には多くの分解があるため、これらはテストケースではなく例です。各分解は異なる行に表示されます。 Input -> Output 5 -> 5 2, 3 15 -> 1, 3, 11 9, 6 21 -> 11, 9, 1 7, 7, 7 42 -> 22, …

12
核分裂性の数
Evolution of OEISの作業中にこのシーケンスを見つけましたが、答えとして投稿することはできませんでした。Mathematicaでリファレンス実装を作成した後、これは別の課題として行うのは楽しい練習だと思ったので、ここで先に進みます。 数値核分裂炉を作りましょう!正の整数を考えてくださいN。例として、を見てみましょう24。この数を分裂させるには、合計がになる連続した正の整数の最大数を見つける必要がありますN。この場合、それは7 + 8 + 9 = 24です。そこで24、3つの新しい数値に分割しました。しかし、これは連鎖反応のない核分裂炉ではありません。したがって、これらのコンポーネントのプロセスを再帰的に繰り返しましょう。 24 /|\ / | \ / | \ 7 8 9 / \ /|\ 3 4 / | \ / \ / | \ 1 2 2 3 4 / \ 1 2 数値をより小さい連続整数に分解できない場合は常にプロセスを停止することに注意してください。また、我々が書かれている可能性があることに注意し9て4 + 5、しかし、2 + 3 + 4より多くのコンポーネントがあります。核分裂数のN今含む、このプロセスで得られた整数の数として定義されているN自分自身を。上記のツリーには13個のノードがありF(24) …

15
11 =(1 + 2 + 3 + 4 + 5)-(1 + 2 + 3)+(6)-(4)
正の整数Nを指定すると、次のアルゴリズムがNに到達するために必要なステップ数を返すことがタスクになります。 最小の三角数の検索T iのようにT I ≥Nを。対応するリストL = [1、2、...、i]を作成します。 Lの項の合計がNより大きい間、リストから最初の項を削除します。 Lの項の合計がNより小さい場合、iをインクリメントしてリストに追加します。ステップ2に進みます。 Nに到達するとすぐに停止します。最初のステップのみが体系的に実行されます。ステップ2と3はまったく処理されない場合があります。 例 以下はN = 11の例です。 したがって、N = 11の期待される出力は4ですです。 他の例: N = 5 - T 3 = 1 + 2 + 3 = 6で始まり、 2 + 3 = 5が続きます。期待される出力: 2。 N = 10 -ためだけ最初のステップが必要とされる 10は三角数である: T 4 = 1 + 2 + …

9
「ソート」アルゴリズム
スターリンソートとも呼ばれる「ソートアルゴリズム」があり、リストをソートするには、リストが昇順にソートされるまでリストから要素を削除するだけです。たとえば、リスト [1, 2, 4, 5, 3, 6, 6] スターリンの並べ替えを使用して「並べ替え」が行われる場合 [1, 2, 4, 5, 6, 6] 3つは故障していたため削除されました。 当然、要素を削除してリストをソートする方法はたくさんあります。たとえば、要素が2つ未満のリストは並べ替える必要があります。そのため、盲目的に十分な要素を削除するだけで、常にリストを並べ替えることができます。これが事実であるため、スターリンの並べ替えから可能な限り長い結果のみを考慮します。 あなたの仕事は、正の整数のリストを取得し、元のリストから要素を削除することで到達できる最長のソートされた(増加する)リストの長さを出力することです。それは、最長のソートされた(おそらく不連続な)サブリストの長さを見つけることです。 ソートされたリストは、同じ要素を連続して複数回持つことができます。プログラム自体が空でない限り、空のリストをサポートする必要はありません。 得点 あなたの答えは、スターリンの可能な限り最長のソートの長さによって採点されます。プログラムは文字ではなくバイトのシーケンスとして解釈され、その順序はバイトを数字として解釈することによって生じる自然な順序になります。スコアが低いほど優れています。 これはコードゴルフではありません ここだきちんと-Oツール、あなたの答えを得点を支援します。 テストケース [1, 2, 4, 5, 3, 6, 6] -> 6 [19, 2] -> 1 [3, 3, 4, 3] -> 3 [10] -> 1 [1, 2, 4, 9] …

24
5つのキューブの合計
整数が与えられた場合、合計がその整数である5つの完全なキューブを出力します。キューブは、正、負、またはゼロになる可能性があることに注意してください。例えば、 -10 == -64 - 64 + 64 + 27 + 27 したがって、入力について-10は出力できます[-64, -64, 64, 27, 27]が、他の解決策も可能です。キューブ化する数値ではなく、キューブを出力する必要があることに注意してください。 解決策は常に存在します -あなたは自分でこれを戸惑うことを楽しむかもしれません。さらに、4つのキューブで十分であると推測されます。

30
賢い人のMira気楼
むかしむかし、Quoraでこの質問/回答を読んでいた FizzBu​​zzテストに合格できないコンピューターサイエンスの学位を持つプログラマーは本当にいますか このコードは明白な答えとして与えられます for i in range(1, 100): if i % 3 == 0 and i % 5 == 0: print "FizzBuzz" elif i % 3 == 0: print "Fizz" elif i % 5 == 0: print "Buzz" else: print i もちろん、FizzBu​​zzは死ぬまでゴルフにかけられましたが、それはこの質問の目的ではありません。あなたはコメントで、4の倍数の印刷「ジャズ」などの追加条件を簡単に追加できるので、この明白な答えは素晴らしいと誰かが言及していることがわかります(同意しません。このスキームを拡張するにはO(2 ** n )コード行。) あなたの挑戦は、仲間によって判断されるようにFizzJazzBuzzの最も美しいバージョンを書くことです。 投票者が考慮すべき事項: ドライ 除算/モジュラス演算の効率 Quoraに関する回答の多くはPythonを使用していましたが、ここではそのような言語の制限はありません。 …
29 popularity-contest  code-challenge  word  popularity-contest  string  grid  language-design  code-golf  source-layout  math  fastest-algorithm  assembly  code-golf  json  code-golf  arithmetic  array-manipulation  code-golf  ascii-art  code-golf  crossword  code-golf  string  restricted-complexity  code-golf  ascii-art  kolmogorov-complexity  code-golf  string  decision-problem  balanced-string  syntax  code-golf  grid  puzzle-solver  hexagonal-grid  code-golf  math  number  sequence  code-golf  string  decision-problem  code-golf  cryptography  king-of-the-hill  code-challenge  fastest-code  code-golf  number  code-golf  code-golf  string  code-golf  cryptography  king-of-the-hill  java  code-golf  number-theory  base-conversion  code-golf  code-golf  array-manipulation  code-golf  array-manipulation  sorting  code-challenge  restricted-source  quine  code-golf  tips  python  king-of-the-hill  code-golf  source-layout  fractal  code-golf  tips  game  king-of-the-hill  path-finding  grid  code-golf  kolmogorov-complexity  natural-language  code-golf  tips  python  code-golf  number  arithmetic  sequence  array-manipulation  code-golf  number  combinatorics  random  integer-partitions  code-golf  string  code-golf  vim  comment  code-golf  combinatorics  counting  code-challenge  rosetta-stone  code-golf  combinatorics  sequence  subsequence  code-golf  code-challenge  restricted-source  primes  printable-ascii  popularity-contest  graphical-output  image-processing 

6
助けて!電卓が誤動作します!
前書き 電卓の動作がおかしい。入力するときにが8表示されることがあり2ます。そして時々私がタイプするとき6それは表示する+。いくつかのボタンが混同されています! 誰が私がどちらを決定するのを手伝ってもらえますか? チャレンジ: 入力:間違った方程式のリスト、正しい結果。 出力:交換される2つのボタン。 例: 入力は次のとおりです。 123 = 3 8423 = 252 4+4 = 8 4*7-10 = 417 9/3 = 3 42-9 = -36 そのために期待される出力は、次のとおり2と*。 どうして?2と*を入れ替えると、すべての方程式が正しいからです。 1*3 = 3 84*3 = 252 4+4 = 8 427-10 = 417 9/3 = 3 4*-9 = -36 チャレンジルール: 入力は任意の合理的な形式にすることができます。スペースで区切られた単一の文字列にすることができます。文字列リストまたは-array。方程式のリストと正しい結果の別のリスト。あなたの電話。使用した入力形式を明記してください! 注:これは-5--15、-5- -15またはとしてテストケースを入力できることも意味します-5 …
28 code-golf  number  arithmetic  integer  code-golf  math  number  geometry  code-golf  grid  code-golf  math  number  sequence  primes  code-golf  sequence  kolmogorov-complexity  code-golf  string  ascii-art  alphabet  code-golf  math  sequence  integer  code-golf  number-theory  integer  natural-language  code-golf  date  code-golf  function  code-golf  ascii-art  code-golf  math  number-theory  primes  classification  code-golf  array-manipulation  decision-problem  matrix  code-golf  number  code-golf  code-golf  ascii-art  matrix  code-golf  string  code-golf  sequence  base-conversion  code-golf  code-golf  math  number-theory  combinatorics  integer-partitions  code-golf  integer  binary  base-conversion  code-golf  integer  base-conversion  palindrome  code-golf  code-golf  integer-partitions  code-golf  math  ascii-art  matrix  code-golf  number  sequence  number-theory  matrix  code-golf  interpreter  code-golf  graph-theory  code-golf  ascii-art  decision-problem  code-golf  division  code-golf  array-manipulation  primes  code-golf  string  ascii-art  code-golf  primes  counting  code-golf  matrix  unicode  code-golf  source-layout  code-golf  grammars  code-golf  string  cops-and-robbers  regular-expression  obfuscation  string  code-challenge  cops-and-robbers  regular-expression  code-golf  kolmogorov-complexity  game  card-games  code-golf  kolmogorov-complexity  code-golf  array-manipulation  matrix  code-challenge  cops-and-robbers  code-challenge  decision-problem  cops-and-robbers  code-golf  permutations 

18
連続整数の合計
誰かが何かを言う前に、似ていると似ています。しかし、これはduではありません。 いくつかの正の整数は、少なくとも2つの連続する正の整数の合計として記述できます。たとえば、9=2+3+4=4+5。入力として正の整数を取り、その合計として増加する連続する正の整数の最長シーケンスを出力として出力する関数を記述します(出力が+上記のように区切られた増加シーケンスである場合は-5バイトですが、任意の形式が許容されます) 。そのようなシーケンスが存在しない場合、番号自体を印刷する必要があります。 これはコードゴルフです。標準ルールが適用されます。バイト単位の最短コードが優先されます。 サンプル(フォーマットが異なることに注意してください) Input: 9 Output: 2,3,4 Input: 8 Output: 8 Input: 25 Output: [3,4,5,6,7]

10
フック長さ製品
A ヤング図は左詰め行及び上部詰め列のボックスの配置です。各ボックスについて、その上とその左のすべてのスペースが占有されます。 XXXXX XXX XXX X ボックスのフックの長さは、その行の右側にあるボックスの数であり、その列の下にあるボックスの数であり、それ自体も一度カウントします。たとえば、2番目のボックスのフックの長さは6です。 X**** X*X X*X X すべてのフックの長さは次のとおりです。 86521 532 421 1 ここでの目標は、フックの長さの積を計算することです8*6*5*2*1*5*3*2*4*2*1*1 = 115200。 (この式が重要な理由に興味がある場合は、フックの長さの式について読んでください。) 入力:行サイズのコレクション、[5,3,3,1]またはのような数字として、[[1,1,1,1,1], [1,1,1], [1,1,1], [1]]またはのような繰り返される単項記号として"XXXXX XXX XXX X"。リストは、必要に応じて昇順または降順で並べ替えることができます。リストは空ではなく、正の整数のみが含まれます。 出力:フックの長さの積。正の整数です。整数オーバーフローやランタイムについて心配する必要はありません。 特に若いダイアグラムまたは整数パーティションを扱うビルトインは許可されていません。 テストケース: [1] 1 [2] 2 [1, 1] 2 [5] 120 [2, 1] 3 [5, 4, 3, 2, 1] 4465125 [5, 3, …

12
Nのべき乗の差として数字を書く
チャレンジ 2つの正方形の差、2つの立方体の差、またはさらに高いべき乗として表現できる数値が多数あります。正方形について言えば、2つの正方形の差として、たとえば75のような数を書くさまざまな方法があります。あなたは書ける: 75 = (10)^2 - (5)^2 = (14)^2 - (11)^2 = (38)^2 - (37)^2 それでは、挑戦について話しましょう。まず、ユーザーが数値を入力し、次にnの値を入力します。その数をaⁿ-bⁿの形式で書くことができるすべての方法を表示する必要があります。 入出力 入力は、nの数と値になります。出力には、上記の条件が満たされるように、「a」と「b」のすべてのペアが含まれます。ペアの最初の数値は、2番目の数値よりも大きくする必要があります。a、b、nおよび入力番号はすべて正の整数であり、n> 1であることに注意してください。 例 50, 2 -> (none) 32, 2 -> (9,7), (6, 2) 7, 3 -> (2,1) 665, 6 -> (3, 2) 81, 4 -> (none) 得点 これはcode-golfなので、最短のコードが優先されます!

27
nのすべての順序付けられたパーティションをリスト
課題は、特定の正の整数のすべての順序付けられたパーティション(組成(組み合わせ))をリストすることnです。これらは、から1までの数字のリストnですn。たとえば、inputを指定するn = 4と、結果は次のようになります。 4 1、3 3、1 2、2 2、1、1 1、2、1 1、1、2 1、1、1、1 結果は任意の順序にすることができますが、順序付けされた各パーティションを1回ずつ含める必要があります。この手段そのためn = 4、[1, 1, 2]、[1, 2, 1]および[2, 1, 1]すべての結果の一部でなければなりません。 これを実現するJavaScriptコードは次のとおりです。 function range(n) { for (var range = [], i = 0; i < n; range.push(++i)); return range; } function composition(n) { return n < 1 ? [[]] : range(n).map(function(i) …

23
アスキーアートオクタゴン
入力整数を指定するとn > 1、n文字で構成される辺の長さのASCIIアートオクタゴンを出力します。以下の例を参照してください。 n=2 ## # # # # ## n=3 ### # # # # # # # # # # ### n=4 #### # # # # # # # # # # # # # # # # #### n=5 ##### # # # # # # …
22 code-golf  ascii-art  code-golf  geometry  code-golf  balanced-string  code-golf  cops-and-robbers  code-challenge  cops-and-robbers  code-golf  code-golf  random  cryptography  code-golf  array-manipulation  number  code-challenge  integer  code-golf  math  integer  code-golf  math  math  parsing  image-processing  test-battery  math  number  combinatorics  fastest-code  code-golf  code-golf  math  number-theory  rational-numbers  polynomials  code-golf  math  geometry  code-golf  code-golf  number-theory  primes  factoring  code-golf  restricted-source  code-golf  string  decision-problem  counting  code-golf  math  sequence  fibonacci  code-golf  array-manipulation  counting  code-golf  array-manipulation  number-theory  code-golf  array-manipulation  code-golf  random  code-golf  string  hexadecimal  code-golf  string  code-challenge  sorting  code-golf  number  floating-point  code-golf  sorting  code-golf  decision-problem  fibonacci  code-golf  number  combinatorics  code-golf  string  code-golf  math  code-golf  electrical-engineering  code-golf  javascript  code-golf  base-conversion  code-golf  array-manipulation  matrix  binary-matrix  code-golf  kolmogorov-complexity  python  perl  ruby  code-golf  number  code-golf  optimization  integer-partitions  code-golf  string  code-golf  ascii-art 

15
いくつかのドミノを倒す!
インスピレーションを与えてくれたこの質問に感謝します この挑戦で、私たちはのストリングとしてドミノのラインを表すでしょう|、/そして\。入力としてドミノの文字列が与えられ、落ち着いたときにどのように見えるかを決定する必要があります。ドミノが倒れる方法のルールは次のとおりです |倒れたドミノの左にある立っているドミノは、\同様に左の倒れたドミノになります。 |倒れたドミノの右側にある立っているドミノも、/同様に倒れた右のドミノになります。 倒れたドミノが左倒れ\た/ドミノと右倒れたドミノの間にある場合、立ったままになります。 これらの規則は、配置が変更されなくなるまで繰り返し適用されます。 単一の入力がその結論に到達する方法の例を次に示します |||||||\/|||||||\||\|||/||||||\||||| ||||||\\//|||||\\|\\|||//||||\\||||| |||||\\\///|||\\\\\\|||///||\\\||||| ||||\\\\////|\\\\\\\|||////\\\\||||| |||\\\\\////|\\\\\\\|||////\\\\||||| ||\\\\\\////|\\\\\\\|||////\\\\||||| |\\\\\\\////|\\\\\\\|||////\\\\||||| \\\\\\\\////|\\\\\\\|||////\\\\||||| あなたの仕事は、入力の最終結果を見つけて出力するコードを書くことです。入力は常に有効で、少なくとも2文字が含まれていると想定できます。 これはコードゴルフであるため、回答はバイト単位で記録され、バイト数は少ない方が良いでしょう。 テストケース |||/|||| -> |||///// |||\|||| -> \\\\|||| |/||||\| -> |///\\\| ||/|||\| -> ||//|\\| ||\|||/| -> \\\|||//

15
Nのパーティションを計算します
あなたの挑戦は簡単です:整数Nを与えられ、合計がNになる正の整数のリストを出力します。たとえば、入力が5の場合、出力する必要があります [1, 1, 1, 1, 1] [1, 1, 1, 2] [1, 1, 3] [1, 2, 2] [1, 4] [2, 3] [5] これらのリストは特定の順序で出力する必要はなく、各リスト内の数字も出力する必要はありません。たとえば、これは「5」の受け入れ可能な出力にもなります。 [1, 1, 1, 2] [5] [3, 1, 1] [2, 1, 2] [4, 1] [1, 1, 1, 1, 1] [2, 3] 入力は正の整数であると安全に想定でき、この数値は任意の妥当な形式で取得できます。 これを行う組み込み関数は使用できません。 プログラムが失敗するか、大きなNに対して時間がかかりすぎる場合、これは問題ありませんが、少なくとも最初の15に対して正しい出力を生成する必要があります。 標準的な抜け穴が適用され、バイト単位の最短回答が勝ちます! テストIO 1: [[1]] 2: …

20
保存されたペニーはペニーです
...カウント! プログラムに、ドルおよび/またはセント単位の金額とコインの値の配列を表す変数を渡します。あなたの課題は、コードに渡される量となるコイン値の特定の配列の可能な組み合わせの数を出力することです。指定されたコインでは不可能な場合、プログラムはを返さなければなりません0。 アメリカの貨幣用語に関する注意: 1セント硬貨:ペニー 5セント硬貨:ニッケル 10セント硬貨:ダイム 25セント硬貨:四半期(四半期ドル) 例1: プログラムが合格しました: 12, [1, 5, 10] (12セント) 出力: 4 12セントを生成するために命名されたコインを結合する4つの可能な方法があります。 12ペニー 1ニッケルと7ペニー 2ニッケルと2ペニー 1ダイムと2ペニー 例2: プログラムが合格しました: 26, [1, 5, 10, 25] (26セント) 出力: 13 26セントを生成するために命名されたコインを組み合わせる13の可能な方法があります。 26ペニー 21ペニーと1ニッケル 16ペニーと2ニッケル 11ペニーと3ニッケル 6ペニーと4ニッケル 1ペニーと5ニッケル 16ペニーと1ダイム 6ペニーと2ダイム 11ペニー、1ダイム、1ニッケル 6ペニー、1ダイム、2ニッケル 1ペニー、1ダイム、3ニッケル 1ペニー、2ダイム、1ニッケル 1四半期と1ペニー 例3: プログラムが合格しました: 19, [2, 7, …

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