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

課題には数学が含まれます。また、より具体的なタグの使用を検討してください:[数値] [数値理論] [算術] [組み合わせ] [グラフ理論] [形状] [抽象代数]。

12
ゼロのように丸く
ゴール 入力番号が与えられたら、1桁の有効数字で最も近い数値に丸めます。 必要条件 入力 浮動小数点数。 入力数がデータ型の制限内の出力になると仮定します(つまり、オーバーフローエラーを無視します)。 0は無効な入力です。 浮動小数点データ型で正確に表現できない(たとえば"0.35"、として保存されている0.3499999)数値はサポートする必要はありません。 出力 1つの非ゼロ数字と任意の数のゼロ数字で構成される最も近い数字。 結果は負数と小数をサポートする必要があります。 入力が2つの可能な出力の間に正確にある場合、ゼロから切り上げます。 プレゼンテーション プレゼンテーションではなく計算に重点が置かれています。出力は浮動小数点データ型である場合があります。これは、完全な表記または科学表記のテキストのいずれかです。特定の方法を提示することでバイト数が減少する抜け穴が見つかった場合は、称賛に値します! 例 9 -3000 .2 0.2 -.2 7e12 5e-15 1e0 テストケース Input Output 1 1 10 10 17 20 99 100 54321 50000 56789 60000 -123 -100 -789 -800 0.23 0.2 0.25 0.3 -0.25 -0.3 4.56e23 5e23 …
12 code-golf  math 

16
バウンスモジュロ2数
モジュロ演算のグラフ()は次のようになります。y=xmodky=xmodky = x \mod k これは、「ラッピング」動作を作成できるため、非常に便利な機能です。ただし、2つの壁の間で「バウンス」のような外観を作成するために使用する場合、非常に面倒です。「バウンス」関数のグラフ()は次のようになります。y=bounce(x,k)y=bounce(x,k)y = \text{bounce} (x, k) y = xのグラフの期間は kです。y = バウンス(x 、k )のグラフの周期は 2 kです。これは、 k単位で上方に移動し、さらに k単位で下方に移動してから、開始位置に戻るためです。両方の関数について、 yの最小値は0、最大値は kです(実際、積分入力のモジュラス関数の場合、 k − 1です)。また、両方の関数で、 x = 0の値は0です。y=xmodky=xmodky = x \mod kkkky=bounce(x,k)y=bounce(x,k)y = \text{bounce} (x, k)2k2k2kkkkkkkyyykkkk−1k−1k-1x=0x=0x=0 チャレンジ 整数と正の整数kを指定すると、y = bounce (x 、k )の整数または浮動小数点近似を返します。xxxkkky=bounce(x,k)y=bounce(x,k)y = \text{bounce} (x, k) これはcode-golfであるため、最短の有効な送信(バイト単位)が勝ちます。 …

30
標準スクラッチとは何ですか?
ゴルフでは、コースの標準スクラッチは次の式を使用して計算されます。 (3*num_of_3_par_holes + 4*num_of_4_par_holes + 5*num_of_5_par_holes) - difficulty_rating あなたの仕事は、これらの4つの入力を考慮して、ゴルフコースの標準スクラッチを計算することです。 次の形式の標準形式で入力する必要があります [num_of_3_pars, num_of_4_pars, num_of_5_pars], difficulty rating しかし、バイトを節約する場合、多くの人は異なる方法で入力を受け取ります。 関数から戻るなど、メタで受け入れられたメソッドによって最終結果を出力する必要があります。 これはコードゴルフであるため、最短のコードが勝ちます!
12 code-golf  math  number 

3
倍増カスケード
最初に、数学的な間奏、短く、あなたの価値があります: の場合0 < a < 4、ロジスティック関数 f(x) = ax(1-x)は間隔[0,1]を内部にマッピングします。これは、反復ゲームをプレイできることを意味します。たとえば、a = 2の場合、初期値0.3は0.42になり、0.4872になります。 パラメーターaが増加するfと、次の意味で2次関数はより複雑になります。 0 < a < 1 すべての初期値は0に向かって反復します。 1 < a < 3 0は反発になりますが、すべての反復を引き付ける新しい固定小数点(a-1)/ aがあります。 3 < a < 1+sqrt(6) 新しい固定点は反発しますが、2つの引き付け点のサイクルが表示されます。 3.44949... < a < 3.54409... 2サイクルは反発しますが、4つの引き付け点のサイクルが表示されます。 等 フェイゲンバウムは、これらのパラメーター間隔の長さが4.6692...、フェイゲンバウム定数にますます近づく速度で減少することに気付きました。素晴らしい発見は、この期間2 分岐シーケンスは、(二次放物線のように)増加してから減少する関数によって共有される一般的な現象であるということです。これはカオスの普遍性に関する最初のレポートの1つでした。 さあ、挑戦しましょう!選択した精度でファイゲンバウム定数を計算する最短のコードを作成します。ここでのポイントは、グーグルで検索した数値をエンコードしてシステムをごまかすことではなく、実際にコンピューターに値を見つけさせることです。参考のため、30桁の定数は次のとおりです。 4.669201609102990671853203821578
12 code-golf  math  number 

14
ファイルにゼロを埋め込む
今日のタスクは、既存のファイルを取得し、特定のサイズに達するまでゼロを追加することです。 現在のディレクトリ内のファイル名fとバイト数を取得するプログラムまたは関数を作成する必要がありますb。の元のコンテンツを維持しながら、新しいサイズがバイトになるように、末尾にfゼロ(ASCIIバイトではなくヌルバイト)を書き込む必要がありbます。 あなたは、と仮定してよいfことは、当初よりも大きくないと、あなたはそれを完全なアクセス許可を持っていることを、その名前だけでASCII英数字を持っていbますが、同じ大きようなものであってもよいb、と無限の空きディスク容量があること。 f空でないと仮定したり、すでにヌルバイトが含まれていないと仮定したりすることはできません。 実行が終了した後、他の既存のファイルを変更したり、新しいファイルを作成したりしないでください。 テストケース fの内容| b | fの結果の内容 12345 | 10 | 1234500000 0 | 3 | 000 [空] | 2 | 00 [空] | 0 | [空の] 123 | 3 | 123
12 code-golf  file-system  code-golf  code-golf  string  code-golf  string  code-golf  random  game  compression  code-golf  array-manipulation  sorting  code-golf  number  arithmetic  primes  code-golf  geometry  code-golf  code-golf  decision-problem  regular-expression  code-golf  string  math  code-challenge  restricted-source  integer  palindrome  code-golf  string  palindrome  code-challenge  busy-beaver  code-golf  ascii-art  code-golf  string  code-golf  string  permutations  code-golf  code-golf  string  permutations  code-golf  number  primes  function  set-theory  code-challenge  hello-world  code-golf  math  number  decision-problem  code-golf  code-golf  sequence  arithmetic  integer  code-golf  math  number  arithmetic  decision-problem  code-golf  kolmogorov-complexity  alphabet  code-golf  combinatorics  graph-theory  tree-traversal  code-golf  set-theory  code-golf  interpreter  brainfuck  substitution  code-golf  quine  permutations 

1
安定した結婚問題
バックグラウンド 2*n結婚する人がいると仮定し、さらに、各人が次nのような制約の下で正確に他の人に惹かれると仮定します。 引力は対称的です。すなわち人Aが人に引き付けられるならば、人はB人Bに引き付けられAます。 魅力は反推移的です。人ならば、すなわちA人がB一人一人に魅了されC、その後、人Aと人がBお互いに惹かれていません。 したがって、アトラクションのネットワークは(無向)完全な2部グラフを 形成しますKn,n。また、各人が自分が惹かれている人をランク付けしたと仮定します。これらは、グラフのエッジの重みとして表されます。 結婚はペアリングであるとお互いに魅了されています。各結婚の1人がパートナーと離婚し、お互いに結婚する可能性がある別の結婚がある場合、結婚は不安定です。(A,B)AB ゴール あなたの仕事は、各人の好みを入力として、各結婚が安定するように各人の結婚を出力する完全なプログラムまたは機能を書くことです。 入力 入力は任意の便利な形式にすることができます。たとえば、重み付きグラフ、設定の順序付きリスト、辞書/関連付けなど。オプションで、総人数を入力として使用できますが、他の入力は許可されません。 出力 出力は任意の便利な形式にすることもできます。たとえば、タプルのリスト、最小エッジカバー、各人にパートナーを関連付ける機能など。唯一の制約は、各結婚が安定していることであり、他の最適化要件はないことに注意してください。 ノート ウィキペディアまたはこのNumberphileビデオで、このO(n^2)問題を解決するための詳細情報とアルゴリズムを見つけることができます。ただし、任意のアルゴリズムを自由に使用できます。 標準的な抜け穴は禁止されています。 これはcode-golfです。最短回答(バイト単位)が優先されます。

9
ガウス行列を作成します
ガウスぼかしは、画像を滑らかにぼかすために使用される方法です。画像のピクセルと畳み込むことで使用されるマトリックスを作成する必要があります。この課題でのタスクは、ガウスぼかしで使用される行列を作成することです。次元(2 r + 1×2 r + 1)の行列を作成するために、ぼかしの半径となる入力rと標準偏差となる入力σを取ります。その行列の各値は、中心からの各方向の絶対距離に依存する(x、y)値を持ち、G(x、y)の計算に使用されます。Gは たとえば、r = 2の場合、5 x 5の行列を生成します。まず、(x、y)値の行列は (2, 2) (1, 2) (0, 2) (1, 2) (2, 2) (2, 1) (1, 1) (0, 1) (1, 1) (2, 1) (2, 0) (1, 0) (0, 0) (1, 0) (2, 0) (2, 1) (1, 1) (0, 1) (1, 1) …
12 code-golf  math  matrix 

1
数学メタゴルフマニア!
Mathemaniaの仕様: Mathemaniaコードのすべての部分は、数字で始まり2ます。から、2次の操作を実行できます。 e:べき乗。このコマンドのデフォルトは、2乗です。 f:階乗。このコマンドのデフォルトでは、数値に単一の階乗(using f on 2 = 2! = 2)が使用されます。 r:ルート。このコマンドのデフォルトは、数値の平方根です。 c:天井機能。 l:フロア機能。 Mathemaniaで数値を生成するには、これらのコマンドを文字列にまとめる必要があります。これらのコマンドは、数値に対して左から右に実行されます2。 例: ef = (2^2)! = 4! = 24 rl = floor(sqrt(2)) = floor(1.4...) = 1 er = sqrt(2^2) = sqrt(4) = 2 efrrc = ceil(sqrt(sqrt((2^2)!))) = ceil(sqrt(sqrt(24))) = ceil(sqrt(4.89...)) = ceil(2.21...) = 3 e、fおよびrコマンド(これもで始める余分Mathemaniaコマンドによって変更することができる2改変された機能の後にブラケットを配置し、その内部Mathemaniaコマンドを配置することによって、異なる累乗、階乗と根を生成するために、その「ベース」数として)。 たとえば、代わりにそれを乗の数をキューブに、あなたがのためにコマンドを入れることができ3た後にeそうように: …
12 math  metagolf 

3
Natural Pi#2-川
ゴール 一連のハッシュを持つ文字列を指定して、その全長を計算し、開始から終了までの距離で除算します。 シミュレーション 何をシミュレートしていますか?この論文によると、川の長さと開始点と終了点の間の距離の比率はおよそPi!(これは経験的に反証されたかもしれませんが、データを見つけることができたので、この挑戦​​のためにそれが真実であると仮定します)。 これをどのようにシミュレートしますか? 空白とハッシュの文字列入力を取得します 各ハッシュには、他の2つのハッシュが隣接しています 1つだけを持つ最初と最後のハッシュを除いて 各キャラクターは格子点上にあります (x, y) x はその行のキャラクターのインデックスです たとえばc、4番目の文字は0123c567 y 文字の行番号です たとえばc、3行目にあります。 0line 1line 2line 3c... 隣接するハッシュ間の距離を合計して呼び出します S 最初と最後のハッシュ間の距離を取り、それを呼び出します D 戻る S/D 仕様 入力 柔軟で、標準的な方法(関数パラメーター、STDINなど)および標準的な形式(文字列、バイナリなど)で入力を取得します。 出力 柔軟性があり、標準的な方法(例:返品、印刷)で出力する 空白、末尾および先頭の空白は許容されます 精度、小数点以下4桁以上の精度を指定してください(例3.1416) 得点 最短のコードが勝ちます! テストケース これらは私の川の近似値です。私の近似は貧弱かもしれませんし、これらは河川人口の貧弱なサンプルかもしれません。また、この計算は手作業で行いました。計算ミスがあったかもしれません。 黄河 ### #### # # # # # # # # # …

1
証明2 + 2 = 2 * 2(および同様)
出力のような、そのような声明の完全な正式なパッと消える1+2=3、2+2=2*(1+1)など はじめに Peano Arithmeticを知っている場合は、おそらくこのセクションをスキップできます。 自然数の定義方法は次のとおりです。 (Axiom 1) 0 is a number (Axiom 2) If `x` is a number, the `S(x)`, the successor of `x`, is a number. したがって、たとえばS(S(S(0)))数字です。 コードで同等の表現を使用できます。たとえば、これらはすべて有効です。 0 "" 0 () ! 1 "#" S(0) (()) !' 2 "##" S(S(0)) ((())) !'' 3 "###" S(S(S(0))) (((()))) !''' ... …

3
音素アブギダ
キャラクター これらのUnicode文字を英語のIPA子音と呼びましょう: bdfhjklmnprstvwzðŋɡʃʒθ そして、これらのUnicode文字を英語のIPA母音と呼びましょう : aeiouæɑɔəɛɜɪʊʌː (はい、ː単なる長母音マークですが、この課題のために母音として扱います。) 最後に、これらは一次および二次ストレスマークです: ˈˌ ことに留意されたいɡ(U + 0261)小文字gではなく、一次ストレスマーカーˈ(U + 02C8が)アポストロフィではなく、ː(U + 02D0)は、結腸ではありません。 あなたのタスク 単語が与えられたら、続く子音の上に母音を重ね、前に来る子音の下に強勢マーカーを置きます。(質問のタイトルが示唆するように、子音母音シーケンスがユニットとしてまとめられているような書記体系はabugidaと呼ばれます。)入力が与えられると、出力ˈbætəlʃɪpを生成します。 æə ɪ btlʃp ˈ 単語は上に定義した、子音、母音、およびストレスマークの文字列であることが保証されます。連続する強勢記号は決して存在せず、それらは常に単語の先頭および/または子音の前に置かれます。 テストケース 母音が連続している場合があります。例えば、kənˌɡrætjʊˈleɪʃənとなり ɪ ə æ ʊeə knɡrtjlʃn ˌ ˈ 単語が母音で始まる場合、子音と「ベースライン」に印刷:əˈpiːlとなり ː i əpl ˈ 初期の強調母音を含むテストケース:にˈælbəˌtrɔsなります ə ɔ ælbtrs ˈ ˌ 長い言葉:にˌsuːpərˌkaləˌfrædʒəˌlɪstɪˌkɛkspiːæləˈdoʊʃəsなる æ ː ː ʊ uə aə …

3
投票の三角形を確認する
投票数我々は、ラベルう、Bは、それぞれ行及び列は、任意の昇順になるように、三角形にBを通って1から番号を配置するいくつかの方法(B + 1)/ 2です。最初の4つの投票番号は次のとおりです。 a(0) = 1 a(1) = 1 a(2) = 1 a(3) = 2 a(3)は2です。つまり、1から2までの数字3(3+1)/2 = 6をこのような三角形に配置するには2つの方法があります。 1 1 2 3 or 2 4 4 5 6 3 5 6 詳細については、OEISシーケンスエントリを参照してください。 投票の三角形を与えられたあなたの挑戦は、その正しさを検証することです。投票三角形の条件を満たす(行と列が増加する)場合、三角形を正しく配置するために他にいくつの方法(入力の方法を除く)を出力する必要があります。入力三角形が正しく構成されていない場合は、何も出力しないでください。 末尾の改行が許可されます。 入力 有効な投票三角形である場合とそうでない場合がある数字の三角形。例えば: 1 2 3 4 5 6 1 10 5 9 8 2 7 …

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

3
ドア賞を受賞する可能性はありますか?
私の地元のACMの章では、会議に参加する人々にドア賞を贈ります。ただし、プログラミングパズルを解くと勝つ可能性が高くなります(ただし、私は常にそのパズルを解きます)。したがって、一部の人には1つのエントリがあり、他の人には2つのエントリがあります。ラッフルプログラムの仕組みは、誰かがパズルを解くときに別のエントリを追加することではありません。代わりに、人が持っている「ライブ」の数を追跡し、その人がランダムサンプリングアルゴリズムの各パスで選択された場合、その人の数を減らします。したがって、次のように機能します。 Doorknob: 1. xnor: 2. Justin: 2. Alex: 1. Dennis: 2. 次に、プログラムはのいずれかをランダムに選択し[Doorknob, xnor, Justin, Alex, Dennis]、数値をデクリメントします(たとえば、選択しますJustin)。 Doorknob: 1. xnor: 2. Justin: 1. Alex: 1. Dennis: 2. そして繰り返します。誰かの「ライブ」の数が0(Justin再度選択しよう)になった場合、リストから削除されます。 Doorknob: 1. xnor: 2. Alex: 1. Dennis: 2. これは、一人が残るまで続きます。その人が勝者です。 さて、本当の問題は、私が勝つ可能性はどのくらいだったのかということです。 次の2つの入力が与えられます。 n。これはチャレンジに参加した人の数です k。これは、n2人の命を持っている(そのうちの)人の数です。この番号には常にあなたが含まれます。 だから、もし私が関数を持っていてpを呼び出したp(10, 5)場合、それは合計10人の人が賞金を獲得する確率になります。 勝つ確率を正確に、または小数として出力することが期待されています。いずれにしても、答えは4を含め、正確にアップしてある必要があります番目の小数点後の小数点以下の場所。その桁に丸めるかどうかはあなた次第です。 あなたのソリューションは、高い確率で小数第 4 位までの回答を出力するランダム化ソリューションかもしれません。使用するビルトインRNGは本当にランダムであり、少なくとも90%の確率で正しい答えを出力する必要があると仮定できます。 さらに、コードはのためにのみ動作する必要がありますがn, k <= 1000、好奇心の強い人向けのテストケースよりも大きなテストケースを提供しました。 …

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