タグ付けされた質問 「factorial」

階乗の計算またはその他の使用法を含む

21
追加の事実!
数学では、n!で示される非負整数nの階乗の短縮された「事実」。は、n以下のすべての正の整数の積です。たとえば、5!ある1 * 2 * 3 * 4 * 5 = 120 空の製品の規則に従って、0の階乗は1です。 これらは、私たちが慣れ親しんでいる通常の事実です。いくつかの選択肢を追加しましょう: 階乗(上記で定義) 二重階乗:n !! = 1 + 2 + ... + n 三重階乗:n !!! = 1-(2-(3-(...-n)))...) 4つの階乗:n !!!! = 1 /(2 /(3 ... / n)))...)。注:これは整数除算ではなく、浮動小数点除算です。 チャレンジ 非負の整数入力を取るN、直接間続く1及び4感嘆符。入力は(まったく)次のようになります:0!、5 !! 、132 !!! または4 !!!! 。このチャレンジでは、柔軟な入力形式を想定していない可能性があります。申し訳ありません。 出力 出力は、任意の便利な形式での結果でなければなりません。4倍階乗の結果は、0 !!!!を除き、小数点の後に少なくとも2桁ある必要があります。= 0。 テストケース: …

5
階乗の因数分解
今日、統計クラスで、いくつかの階乗を一緒に乗算すると単純化できることがわかりました!例えば:5! * 3! = 5! *3*2 = 5! *6 = 6! あなたの仕事: アラビア数字と感嘆符のみを含む文字列が与えられた場合、あなたの言語の最小バイト数で、ゴルフのスタイルをコード化して、可能な限り短い文字列に階乗を単純化します。 入力 アラビア数字と感嘆符のみを含む文字列。入力の階乗は200!より大きくなりません。階乗には、数ごとに複数の階乗がありません。入力は整数のリストとして取得できます。 出力 入力に同等の値を持つ、おそらく短縮された文字列。順序は重要ではありません。階乗記法は必須ですが、数字ごとに複数の階乗記号を使用する必要はありません。 テストケース In: 3!2!2! Out: 4! In 2!3!2!0! Out: 4! In: 7!2!2!7!2!2!2!2! Out: 8!8! In: 23!3!2!2! Out: 24! Also: 4!! In: 23!3!2!2!2! Out: 24!2! In: 127!2!2!2!2!2!2!2! Out: 128! In: 32!56!29!128! Out: 29!32!56!128! 幸運を祈ります

2
論理ゲートでのゲリマンダーリング
多数決関数は、3つのブール入力を取り、最も一般的な値を返すブール関数です。たとえば、if maj(x,y,z)が多数決関数であり、TtrueをF示し、false を示す場合: maj(T,T,T) = T maj(T,T,F) = T maj(T,F,F) = F maj(F,F,F) = F この質問は、ブール関数を多数決関数の構成として記述することに関するものです。多数決関数の5進構成の例は(x1,x2,x3,x4,x5) => maj(x1,x2,maj(x3,x4,x5))です。この関数は、これらのサンプル入力ベクトルで次の出力を返します。 (T,T,F,F,F) => maj(T,T,maj(F,F,F)) = maj(T,T,F) = T (T,F,T,T,F) => maj(T,F,maj(T,T,F)) = maj(T,F,T) = T (T,F,T,F,F) => maj(T,F,maj(T,F,F)) = maj(T,F,F) = F (F,F,F,T,T) => maj(F,F,maj(F,T,T)) = maj(F,F,T) = F 仕事 ブール値の正の整数nと長さnのベクトルのリストを入力し、可能であれば与えられたすべてのベクトルでtrueを返す多数決ゲートのツリーを出力するプログラムを作成します。この関数は、制約のリストにないベクトルに対してtrueまたはfalseを返す場合があります。 ベクトルのリストは、任意の形式で入力できます。必要に応じて、ベクトルを入力する代わりに、ベクトル内の真の位置のリストを入力できます。したがって、たとえば、[TTF,TFT,FTT]or [[T,T,F],[T,F,T],[F,T,T]]または[[1,2],[1,3],[2,3]](真の位置のリスト)はすべて問題ありません。 …

30
Parrotプログラムを作成する
入力が与えられると、その入力の後に改行が際限なく続きます。 入力は、印刷可能なASCII文字(0x20-0x7E)と改行(0x0A)のみで構成される文字列になります。 入力の長さが0の場合、改行を無限に出力します。 これはコードゴルフなので、各言語で最も少ないバイトです勝ちます!
15 code-golf  string  sequence  combinatorics  fastest-code  number  code-challenge  restricted-source  rosetta-stone  code-golf  arithmetic  decision-problem  integer  factorial  code-golf  arithmetic  decision-problem  integer  bitwise  code-golf  kolmogorov-complexity  code-golf  tips  vim  code-golf  quine  code-generation  code-golf  string  restricted-source  code-golf  string  random  unicode  code-golf  audio  code-golf  ascii-art  code-golf  decision-problem  code-golf  puzzle-solver  code-golf  restricted-source  code-golf  kolmogorov-complexity  permutations  hexagonal-grid  code-golf  string  math  combinatorics  fastest-code  code-golf  restricted-source  code-golf  string  code-golf  arithmetic  code-golf  math  number  code-golf  string  decision-problem  balanced-string  code-golf  binary  code-golf  string  number  code-challenge  restricted-source  code-golf  ascii-art  printable-ascii  interactive  code-golf  string  ascii-art  code-challenge  restricted-source  source-layout  code-golf  arithmetic  tips  functional-programming  golfing-language  code-golf  binary  encryption 

13
フィボナッチ製品
正のフィボナッチ数の一意の合計として、0より大きい数を分解できます。この質問では、可能な最大の正のフィボナッチ数を繰り返し減算することでこれを行います。例えば: 1 = 1 2 = 2 3 = 3 4 = 3 + 1 12 = 8 + 3 + 1 13 = 13 100 = 89 + 8 + 3 ここで、フィボナッチ積を上記と同じリストと呼びますが、加算は乗算に置き換えられます。たとえば、f(100) = 89 * 8 * 3 = 2136。 正の整数nを指定して、その数のフィボナッチ積を返すプログラムまたは関数を作成します。 テストケース: 1: 1 2: 2 3: 3 4: …
13 code-golf  math  sequence  fibonacci  code-golf  word  code-golf  cipher  code-golf  string  math  subsequence  code-golf  regular-expression  code-golf  brainfuck  assembly  machine-code  x86-family  code-golf  math  factorial  code-golf  math  geometry  code-golf  math  arithmetic  array-manipulation  math  number  optimization  stack  metagolf  code-golf  tips  assembly  code-golf  tips  lisp  code-golf  number-theory  path-finding  code-golf  number  sequence  generation  code-golf  math  geometry  code-golf  grid  permutations  code-golf  code-golf  graphical-output  geometry  fractal  knot-theory  code-golf  math  arithmetic  code-golf  interpreter  balanced-string  stack  brain-flak  code-golf  math  set-theory  code-golf  math  array-manipulation  code-golf  code-golf  string  natural-language  code-golf  code-golf  math  linear-algebra  matrix  code-golf  string  encode 

16
どれだけ素早く増殖できますか?
最近のPython バッシングで、Pythonの強みを示す試みがあります。あなたの課題は、n10秒以内にできるだけ大きな数の階乗を計算するプログラムを書くことです。 あなたのスコアは (highest n for your program on your machine)/(highest n for my program on your machine) ルール 正確な整数解を計算する必要があります。階乗は64ビットの符号なし整数に収まるものよりもはるかに高いため、言語が大きな整数をサポートしていない場合は文字列を使用できます 標準的な抜け穴は禁止されています。特に、外部リソースは使用できません。 計算部分(これには文字列を使用した回避策の時間が含まれます)のみが合計時間に追加され、平均で10秒未満になります。 シングルスレッドプログラムのみ。 出力は簡単に印刷可能な形式(印刷に時間がかかるため)(以下のプログラムを参照)、文字列、変数、文字配列などに保存する必要があります。 編集: プログラムは、すべてに対して正しい出力を提供する必要がありますn。1 <= n <= (your highest n) EDIT2: 私はこれを明示的に言うのは嫌いですが、あなたの言語の組み込み階乗関数を使用すると、標準の抜け穴に陥りますhttp://meta.codegolf.stackexchange.com/a/1078/8766 すみません 私のプログラム from __future__ import print_function import time def factorial( n ): return reduce( ( lambda …

2
nを法とする数論のインタープリター
(私たちの目的のための)数論の文は、次の記号のシーケンスです。 0および'(後継者)-後継者は+1、0'''' = 0 + 1 + 1 + 1 + 1 = 4 +(加算)と*(乗算) = (に等しい) (と)(括弧) 論理演算子nand(a nand bis not (a and b)) forall (ユニバーサル数量詞) v0、v1、v2、など(変数) ここに文の例があります: forall v1 (forall v2 (forall v3 (not (v1*v1*v1 + v2*v2*v2 = v3*v3*v3)))) ここでnot xは省略形ですx nand x-実際の文が使用する(v1*v1*v1 + v2*v2*v2 = v3*v3*v3) nand …
12 code-golf  number-theory  parsing  code-golf  kolmogorov-complexity  code-golf  code-golf  array-manipulation  matrix  code-golf  array-manipulation  code-golf  string  code-challenge  graphical-output  compression  code-golf  kolmogorov-complexity  code-golf  sequence  array-manipulation  code-golf  number  base-conversion  code-golf  string  decision-problem  code-golf  string  ascii-art  code-golf  string  random  code-challenge  brainfuck  code-generation  code-golf  code-golf  quine  code-golf  interpreter  code-golf  interpreter  code-golf  array-manipulation  sorting  code-golf  halting-problem  code-golf  javascript  code-golf  algorithm  code-golf  arithmetic  code-golf  math  counting  code-golf  math  code-golf  decision-problem  radiation-hardening  code-golf  conversion  bitwise  code-golf  number  decision-problem  code-golf  string  decision-problem  code-golf  random  game  code-golf  ascii-art  graphical-output  code-golf  decision-problem  binary-tree  tree-traversal  code-challenge  array-manipulation  code-challenge  graphical-output  path-finding  test-battery  algorithm  code-golf  integer  factorial  code-golf  binary-tree  code-golf  grid  graph-theory  code-golf  regular-expression  quine  code-golf  encoding  code-golf  king-of-the-hill  javascript 

7
2つの数値に一意の階乗が含まれていますか?
2つの数値を階乗に分解します。共有している場合は、偽の値を返します。それ以外の場合は、真実の値を返します。(この最近の質問に触発された) 言い換えれば、各入力番号を可能な限り貪欲な方法で(正の整数の)階乗の合計として書き込みます。両方の表現に階乗が現れない場合は真実の値を、そうでなければ偽の値を返します。 例 20と49が与えられた場合: 20 = 3! + 3! + 3! + 2! 49 = 4! + 4! + 1! 両方の表現に階乗が現れないため、真理値を返します。 32と132が与えられた場合: 132 = 5! + 3! + 3! 32 = 4! + 3! + 2! 3!両方の表現に表示されるため、falsey値を返します。 I / O 入力と出力は、任意の標準的な手段で行うことができます。 入力は常に2つの非負整数になります。言語が必要とするもの以外のこれらの整数の上限はありません。 出力は、真偽値または偽値でなければなりません。すべての出力が正しく真実/偽である限り、これらの値は必ずしも異なる入力に対して一貫している必要はありません。 テストケース 1つの入力がの0場合、答えは常に真実です。他の真実のテストケース: {6, 3}, {4, 61}, {73, …
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.