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

この課題は、数値を使用、操作、入力として受け入れる、または数値を出力することによって解決することを目的としています。

2
Kippleを解釈してください!
前書き Kippleは、2003年3月にRune Bergによって発明されたスタックベースの難解なプログラミング言語です。 Kippleには、27のスタック、4つの演算子、および制御構造があります。 スタック スタックは命名されているa- zと32ビット符号付き整数を含んでいます。また@、数値の出力をより便利にするための特別なスタックがあります。数字がにプッシュされる@と、その数字の数字のASCII値が実際にプッシュされます。(たとえば、12を@に押した場合、49を押し、次に50を押し@ます。) iプログラムが実行される前に、入力が入力スタックにプッシュされます。インタープリターは、i実行前に保存する値を要求します。実行が終了すると、出力スタック上のすべてoがポップされ、ASCII文字として出力されます。これはKippleの唯一のIOメカニズムであるため、Kippleプログラムとの対話は不可能です。 オペレーター オペランドは、スタック識別子または符号付き32ビット整数のいずれかです。 プッシュ:>または< 構文:Operand>StackIndentifierまたはStackIndentifier<Operand Push演算子は、オペランドを左に取り、指定されたスタックにプッシュします。たとえば12>a、値12をstackにプッシュしますa。a>bstackから一番上の値をポップし、stack aにプッシュしますb。空のスタックをポップすると常に0 a<bが返されb>aます。これはと同等です。a<b>c最上位から値ポップbの両方にとプッシュをcしてa。 追加: + 構文: StackIndentifier+Operand 追加演算子は、スタックの一番上の項目とオペランドの合計をスタックにプッシュします。オペランドがスタックの場合、値はそこからポップされます。たとえば、スタックの最上位の値aが1の場合、a+23をプッシュします。aが空の場合、a+22をプッシュします。スタックの一番上の値場合aとbがある1と2は、a+bスタックから値2をポップアップ表示されますbし、スタックに3を押しますa。 減算: - 構文: StackIndentifier-Operand Subtract演算子は、Add演算子とまったく同じように機能しますが、加算ではなく減算する点が異なります。 晴れ: ? 構文: StackIndentifier? Clear演算子は、最上位のアイテムが0の場合、スタックを空にします。 インタープリターは演算子の隣にないものをすべて無視するため、次のプログラムが機能しますa+2 this will be ignored c<i。ただし、コメントを追加する適切な方法は、#文字を使用することです。a #と行末文字の間のすべてのものは、実行前に削除されます。ASCII文字#10は、Kippleの行末として定義されています。 オペランドは2つの演算子で共有a>b c>b c?できますa>b<c?。たとえば、と書くことができます。 プログラム1>a<2 a+aはa、値を[1 4](下から上へ)含むようになり、ではありません[1 3]。-オペレーターも同様です。 制御構造 Kippleには、ループという制御構造が1つしかありません。 構文: (StackIndentifier code ) …
12 code-golf  interpreter  code-golf  string  code-golf  math  string  code-golf  ascii-art  path-finding  code-golf  string  ascii-art  code-golf  interpreter  binary  logic-gates  logic  code-golf  ascii-art  code-golf  graph-theory  code-golf  string  code-golf  number  sorting  code-golf  number-theory  random  cryptography  polynomials  code-golf  number  code-golf  math  number  sequence  code-golf  quine  code-generation  code-golf  arithmetic  set-theory  code-golf  sequence  code-golf  code-golf  string  math  fastest-code  optimization  code-golf  code-golf  internet  stack-exchange-api  code-golf  array-manipulation  code-golf  string  internet  string  code-challenge  internet  test-battery  code-golf  math  pi  code-golf  arithmetic  primes  code-golf  array-manipulation  code-golf  string  code-golf  string  palindrome  code-golf  sequence  number-theory  fastest-algorithm  code-golf  math  number  base-conversion  code-golf  number-theory  sorting  subsequence  search  code-golf  permutations  code-challenge  popularity-contest  code-generation 

3
自己参照多項式
与えられた次数ごとに、(で評価される)がallの多項式の項の係数になるように(n少なくとも1つ)積分多項式を構築することができます。それらを一意にするために、先頭の係数(の係数)が正で最小であることを要求します。pp(k)pkx^k0 <= k <= nx^n これらの多項式にはいくつかの興味深い特性があります。この挑戦をするように私を促したスレッドでいくつかの参照を見つけることができます。これらの多項式はhttps://oeis.org/A103423でも見つけることができます。 先験的な予期しないプロパティの1つは、次の条件に応じてルートがどのように動作するかnです。 ソース(/ u / zorngovおよび/ u / EpicSauceSc2による) 仕事 非負の整数n出力が与えられ、正のn先行係数が最小の次数の自己参照積分多項式。 詳細 出力は、文字列としてx^2-x-1、または係数のリストとして、人間が読める形式にすることができます[1,-1,-1]。(係数の順序は逆の場合もありますが、一貫している必要があります。) 最初のいくつかの出力 n=0: 1 n=1: x n=2: x^2-x-1 n=3: 10*x^3-29*x^2-6*x+19 n=4: 57*x^4-325*x^3+287*x^2+423*x-19 n=5: 12813*x^5-120862*x^4+291323*x^3+44088*x^2-355855*x-227362

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 

1
この単語にはいくつの文字がありますか?
Project Euler#17に触発され、これがあなたの挑戦です。入力として数値を受け取る完全なプログラムまたは関数を作成し、その数値までカウントするのに必要な文字数(1から始まる)を印刷または返します。スペース、コンマ、ハイフンは含めませんが、単語を含める必要がありますand。例えば。342のスペルは次のとおりThree Hundred and Forty-Twoです。これは23文字の長さです。 入力は正の整数になります。無効な入力を処理する必要はありません。数値を英語に変換する組み込みまたはライブラリは許可されていません。 数字のつづり方に関するすべてのルールを次に示します。(注:一部の人々は、数字のつづり方に異なる規則のセットを使用していることを認識しています。これは、このチャレンジの目的のための公式規則にすぎません) 1から20 1、2、3、4、5、6、7、8、9、10、11、12、13、14、15、16、17、18、19、20 21から99 これらに参加してください: 20、30、40、50、60、70、80、90 これらに: -one、-two、-three、-four、-five、-six、-seven、-eight、-nine、 4にはuが40あることに注意してくださいしません! 例: 53: Fifty-three 60: sixty 72: seventy-two 99: ninety-nine 100から999 数百(百、二百、三百など)、「および」、および上記の残りの数字を書きます。とあなたの手紙のスコアにカウントされます。 例: 101: One hundred and one 116: One hundred and sixteen 144: One hundred and forty-four 212: Two hundred and twelve 621: Six Hundred …
12 code-golf  math  number 

6
バイナリ検索のステップ数
入力が正の整数の場合、1から始まるバイナリ検索で入力を見つけるために必要なステップ数を出力します。 入力として与えられた整数のバイナリ検索をシミュレートします。シミュレートされたサーチャーは整数を繰り返し推測し、整数が高すぎる、低すぎる、または正しいかどうかを確認できます。整数を見つけるための戦略は次のとおりです。 nを、検索しようとしている入力として与えられた整数とします。 1の推測から開始します(推測ごとに(正しいかどうかに関係なく)ステップ数を増やし、推測が正しい場合は直ちにステップの合計数を停止して出力します。) 推測がn(ターゲット数)よりも大きくなるまで繰り返し推測を繰り返します。(または、それが正しい場合でも、上記の正しい推測ルールで既にカバーされています。) ここで、n(つまり、推測された数)よりも大きい2の最初の累乗の上限を設定し、その直下に2の累乗の下限を設定します。 上限と下限の平均(切り捨て)を繰り返し推測します。高すぎる場合は、上限として設定します。低すぎる場合は、下限として設定します。この手順により、最終的に正しい推測が行われることが保証されます。 n = 21の入力の例を次に示します。 1 -> 2 -> 4 -> 8 -> 16 -> 32 -> 24 -> 20 -> 22 -> 21 \__________________________/ repeated doubling \________________________/ repeated averaging これはcode-golfであるため、バイト単位の最短コードが優先されます。 以下は、n = 1からn = 100までのすべての出力です。 1 2 4 3 6 5 6 4 8 …

4
担当者の再計算にご協力ください!
数か月前に、質問に対する賛成票で与えられる評判を高めることについて、メタについて議論しました。投票の現在の評判システムの基本は次のとおりです。1 質問に賛成票を投じるU価値は5つあります。 回答の賛成票uは10名の価値があります。 質問または回答のダウン票dは、-2評判に値します。 新しいシステムにはさまざまな提案がありましたが、現在最も人気のあるものは上記と同じですが、質問の賛成票が+10 repにスケーリングされています。この課題は、このシステムが導入された場合にどれだけ多くの担当者を獲得できるかを計算することです。 例を見てみましょう。投票アクティビティがの場合、UUUUuuuuUUUUUduuudUU現在のシステムでは121を獲得します。 U x 4 x 5 = 20 = 20 u x 4 x 10 = 40 = 60 U x 5 x 5 = 25 = 85 d x 1 x -2 = -2 = 83 u x 3 x 10 = 30 …

4
文字列に収まるすべての数字
正の整数Nを取り込むプログラムまたは関数を作成します。数字()、小数点()、および負符号()を使用して、正確にN文字で記述できるすべての個別の10進数のリストを出力します。0123456789.- 例えば、N = 4の出力リストであろういくつかの数であり1337、3.14、.999、-789、-2.7、および-.09。 数字は通常の方法で書かれますが、できるだけ短い形式で書かれます。これの意味は: 小数点は、数値が整数でない場合にのみ含める必要があります。 たとえば45.0、45.プレーンとして記述される必要があります45 -45.00 として書かれるべきです -45 小数点の左側に先行ゼロがないはずです。 03003として記述される必要3が30あり300ますが、そのままで問題ありません 0.3そして00.3ただのように書かれるべきです.3 -03 として書かれるべきです -3 -0.3 として書かれるべきです -.3 小数点の右側に後続ゼロがないはずです .50そして、.500のように記述する必要があります.5 900.090 として書かれるべきです 900.09 最後の2つの規則の例外はそれ自体がゼロであり、これは常にplainと記述0する必要があります。 正符号(+)は、番号を不必要に長くするため使用しないでください。 また、マイナス記号(-)を減算記号として使用しないでください。ゼロ未満の数字の最初の文字としてのみ表示されます。 書式設定 数値の出力リストの順序は重要ではありません。上昇、下降、または完全に混ざり合っている可能性があります。それだけでその重要すべてをN文字で記述できる個別の数字。 リストは、物事が一貫している限り、スペース、改行、コンマ、またはおそらく数字の間の何かを使用して、合理的な方法でフォーマットできます。先頭と末尾の括弧(または同様のもの)は問題ありませんが、数値を引用符で囲むことはできません。(つまり、出力で文字列とint / floatを目に見えて混同しないでください。) たとえば、N = 1の場合、有効な出力は次のようになります。 0 1 2 3 4 5 6 7 8 9 [1, 2, 3, 4, 5, …

10
9ニンジャの死
チャットでのこの会話に触発されました。 このチャレンジの目標は、忍者をエミュレートし、彼が何人の死者を残したかを数えることです。 スペック あなたの忍者は、残り9人で始まります。彼はまた、入力として不可欠な開始健康状態を取得します。 次に、彼は入力として、自分の健康を変える人生の出来事のリストを受け取ります。これらは、負、正、またはゼロの整数です。 いずれかの時点で、彼の健康がゼロ以下に達すると、彼は命を失い、彼の健康は最初の健康に戻ります。 あなたのプログラムは、彼が残した死亡者数を報告すべきです。残りがゼロ以下の場合は、dead代わりに出力する必要があります。 これはcode-golfなので、バイト単位の最短コードが勝ちです! テストケース 3, [] -> 9 100, [-20, 5, -50, 15, -30, -30, 10] -> 8 10, [-10, -10, -10, -10] -> 5 10, [-10, -10, -10, -10, -10, -10, -10, -10, -10] -> dead 0, [] -> dead 0, [1] -> dead …

22
10 9 8 7 6 5 4 3 2 1…印刷2016
Puzzlingでの私の挑戦へのスピンオフとして、あなたの目標はを出力すること2016です。 ルール: 10 9 8 7 6 5 4 3 2 1その順序で番号を含める必要があります。彼らは、個々の整数として使用されるか、または(同様に一緒に連結することができる1098)が、10に分離しなくてもよい1し、0-何文字(単数または複数)の数字の間に存在しなくてもよいです。一部の言語で10は、実際には整数リテラルを表すとは限らないことに注意してください10。 コードには、他の数値や事前定義された数値変数や定数Tを含めることはできません(したがって、Pythでは数値定数であるため許可されません)。 数値を使用して計算 する必要があります2016。2016必要な数に対して操作を実行せずに(たとえば、アルファベット文字のみで構成されるエンコードされた文字列をデコードして)出力することは許可されていません。出力2016(例えば、小片に20その後、16また許可されていません)。数値で構成される単一の出力が必要です2016。 最小バイト数の有効な答えが勝ちです。

1
月曜日のミニゴルフ#7:成分測定の簡素化
月曜日のミニゴルフ:毎週月曜日に(願わくば!)投稿された一連の短いコードゴルフチャレンジ。 遅れてすみません。私は、それが複製であるという別のアイデアを書き出す過程の90%を実現しました。 私の家族はかなり大きいので、たくさんの食べ物を食べます。十分な食料を作るには、通常、2倍、3倍、または4倍のレシピが必要です。しかし、測定値を乗算することは苦痛になる可能性があるため、これを行うプログラムを用意しておくと便利です。 チャレンジ あなたの挑戦は、数値Nと文字Lとして測定値を取り込んで、できるだけ単純化された同じ測定値を返すプログラムまたは関数を作成することです。必要な測定単位(すべて私の家族と同じようにアメリカ人)とそれに対応する文字は次のとおりです。 1 cup (c) = 16 tablespoons (T) = 48 teaspoons (t) 1 pound (l) = 16 ounces (o) 1 gallon (g) = 4 quarts (q) = 8 pints (p) = 128 fluid ounces (f) 「可能な限り簡素化」とは、次のことを意味します。 可能な限り最大の測定単位を使用します。各ユニットには、1 / 4、1 / 3、1 / 2、2 / 3、または3/4の残りがあります。 必要に応じて、結果を混合数値に変換します。 …

14
合成番号シーケンス
合成番号シーケンス この質問に触発された 正の整数nを指定すると、コードは最初のn個の合成数を出力する必要があります。 入出力 プログラムまたは関数を作成できます。入力はSTDINまたは関数の引数を介して行われ、出力はSTDOUTまたは関数の戻り値を介して行われます。 出力は、リスト、配列、または文字列です。 例 0 -> 1 -> 4 2 -> 4, 6 3 -> 4, 6, 8 13 -> 4, 6, 8, 9, 10, 12, 14, 15, 16, 18, 20, 21, 22 ルール いつものように、標準的な抜け穴は許可されていません。 素数または合成数を生成するビルトインは許可されていません。 素数または合成数に関連するビルトインは許可されていません。

2
リストを滑らかにする
入力として負でない整数kとソート済み整数リストを取りL、平滑化リストを出力または返すプログラムまたは関数を作成する必要がありますM。 MリストをソートしたままL最大でk整数要素を挿入することにより、昇順リストから作成されます。挿入される整数は、最大の前方差分がMできるだけ小さくなるように選択する必要があります。この最小値を「滑らかさ」と呼びます。 リストの前方差分-1 3 8 11 15はで4 5 3 4あり、最大前方差分は5です。 2挿入の滑らかさ2 10 15、IS 4との可能な出力があり2 6 10 11 15、前方の違いで4 4 1 4。 入力 負でない整数k。 L少なくとも2つの要素を持つ昇順の整数リスト。 出力 昇順の整数リストM。 複数の正解が存在する場合は、そのうちの1つだけを出力します(いずれか1つで十分です)。 あなたの解決策は、私のコンピューターで1分以内にすべてのサンプルテストケースを解決する必要があります(近くのケースのみをテストします。平均以下のPCを持っています)。 例 入力(k、L)=>可能な出力と括弧内の最大前方差分(出力の一部ではない) 0, 10 20 => 10 20 (10) 2, 1 10 => 1 4 7 10 (3) 2, 2 10 15 …

9
ペアゴルフツインプライムとCollat​​zシーケンス
これは、Recover the mutated source code問題に触発された新しい種類の挑戦です。 2つのプログラムまたは関数を両方とも同じ言語で作成する必要があります。最初のタスクはタスク#1を解決し、2番目のタスクはタスク#2を解決する必要があります。 スコアは、長いプログラムと2つのプログラムのソースコード間のレーベンシュタイン距離の合計になります。スコアが低いほど良いので、プログラムの長さを短く保ちながら、2つのソリューションを似たものにするようにしてください。 タスク1 正の整数が与えられ、スペースまたは改行で区切られNたCollat​​zシーケンスを出力する必要Nがあります。末尾の区切り文字が許可されます。 Collat​​zシーケンスの最初の要素はNです。残りの要素は、後続のai − 1a私−1a_{i-1}基づいて生成されます。 ai={ai−123ai−1+1 if ai−1 is even if ai−1 is oddai={ai−12 if ai−1 is even3ai−1+1 if ai−1 奇妙です a_i = \begin{cases} \frac{a_{i-1}}{2} & \text{ if } a_{i-1} \text{ is even} \\ 3a_{i-1} + 1 & \text{ if } a_{i-1} \text{ …

25
デイ2のランダムゴルフ:正規分布の数値
シリーズについて まず、これを他のコードゴルフチャレンジと同様に扱い、シリーズについてまったく心配することなく答えることができます。ただし、すべての課題にリーダーボードがあります。最初の投稿で、シリーズに関する詳細情報とともにリーダーボードを見つけることができます。 このシリーズにはたくさんのアイデアが並んでいますが、将来の課題はまだはっきりしていません。何か提案があれば、関連するサンドボックスの投稿でお知らせください。 穴2:正規分布の数値 これがまだ行われていないなんて信じられない!正規分布から描画して、乱数を生成します。いくつかのルール(それらの大部分はおそらくほとんどの投稿で自動的にカバーされますが、それらのいくつかは非常に異なる言語間の結果の一貫性を確保するために配置されています): あなたは取るべき入力として2非負整数シード:Sと量Nのリターンに数字のを。出力はN、平均が0で分散が1の正規分布から描かれた浮動小数点数のリストである必要があります。提出物に同じシードが与えられるたびにS、同じ数が生成されます。特に、で1回とで1回呼び出される場合、2つの出力の最初のエントリは同一である必要があります。さらに、少なくとも2 16個の異なる値が異なるシーケンスを生成する必要があります。(S, N1)(S, N2)min(N1, N2)S 文書化された任意の組み込み乱数ジェネレーターを使用して、(ほぼ)均一な分布から数値を引き出すことができます。ただしS、それに渡すことができ、少なくとも2 16の異なるシードをサポートします。もしあなたがそうするなら、、RNGリクエストした特定の番号に対して少なくとも2 20個の異なる値を返すことができるはずです。 利用可能なユニフォームRNGの範囲が狭い、シードできない、またはサポートするシードが少なすぎる場合、最初に組み込みのRNGの上に十分に大きな範囲を持つユニフォームRNGを構築するか、独自のRNGを実装する必要があります を使用し適切なRNGを種。このページはそのために役立つかもしれません。 正規分布を生成するための確立されたアルゴリズムを実装しない場合は、正確性の証明を含めてください。どちらの場合でも、選択するアルゴリズムは、理論的に正確な正規分布を生成する必要があります(基礎となるPRNGの制限または精度が制限されたデータ型を除く)。 実装は、浮動小数点数(少なくとも32ビット幅)を使用して返す必要がありますまたは固定小数点数(少なくとも24ビット幅)を、すべての算術演算では、選択したタイプの全幅を使用する必要があります。 以下のように、正規分布またはガウス積分に直接関連する組み込み関数を使用しないでください。 Error関数やその逆関数など。 完全なプログラムまたは関数を作成し、STDIN、コマンドライン引数、関数引数、またはプロンプトを介して入力を取得し、戻り値またはSTDOUT(または最も近い代替)に出力して出力を生成できます。 SそしてN、それぞれが2 20未満の非負の整数になりますます。出力は、便利で明確なリスト形式または文字列形式です。 これはコードゴルフなので、最短の提出(バイト単位)が勝ちです。そしてもちろん、ユーザーごとの最短投稿もシリーズの総合リーダーボードに入ります。 リーダーボード シリーズの最初の投稿はリーダーボードを生成します。 回答が表示されるようにするには、次のマークダウンテンプレートを使用して、すべての回答を見出しで開始してください。 # Language Name, N bytes N提出のサイズはどこですか。スコアを改善する場合、古いスコアを打つことで見出しに残すことができます。例えば: # Ruby, <s>104</s> <s>101</s> 96 bytes (言語は現在表示されていませんが、スニペットはそれを必要とし、解析します。将来、言語ごとのリーダーボードを追加する可能性があります。)

22
Stöhrシーケンスを生成する
私はRubyを学び、この問題を解決するための最初の重要なコードを書きました。 課題は、第一生成するn個の要素Stöhr配列、S以下のように定義されます: S [0] = 1 S [n]は、シーケンス内の2つの異なる前の要素の合計として表現できない最小数です。 したがって、シーケンスは1、2、4、7、10で始まります。11(= 1 + 10)と12(= 2 + 10)は前の要素の合計ですが、13はそうではないため、次の要素は13です。 最短のコードを探しています。私自身のRubyの長さは108文字ですが、投稿する前に他の人がどのようなものを思いつくのを待つのでしょうか?

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