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

初等算術に関連する課題。

11
二乗差を最大化する
整数値の順列を検討1するがN。たとえば、次の例N = 4: [1, 3, 4, 2] このリストは循環的である1と見なし、そのように、および2隣接として扱われます。そのようなリストについて計算できる1つの量は、隣接する値の差の2乗の合計です。 (1-3)² + (3-4)² + (4-2)² + (2-1)² = 10 あなたの仕事は、正の整数を与えられて、この量を最大にする順列を見つけることNです。N = 4上記の例の場合、最適ではありません(実際、最小限です)。18次の順列(および他のいくつかの順列)の合計平方差を達成できます。 [1, 4, 2, 3] アルゴリズムは(のN)多項式時間で実行する必要があります。特に、すべての順列の差の合計を単純に計算することはできません。 プログラムまたは関数を作成し、STDIN(または最も近い代替)、コマンドライン引数または関数引数を介して入力を取得し、STDOUT(または最も近い代替)、関数の戻り値または関数(out)パラメーターを介して結果を出力できます。 出力は、任意の便利で明確なフラットリストまたは文字列形式にすることができます。0toのN-1代わりに1toの値を持つリストを返すことを選択できますN。 標準のコードゴルフ規則が適用されます。 テストデータ この問題に対する優れた分析ソリューションがあります。たとえば、すべての有効なソリューションN = 10は次のリストと同等です(巡回シフトおよび反転まで)。 [7, 5, 6, 4, 8, 2, 10, 1, 9, 3] 私は(それがパターンを把握する、おそらく十分ですが)それを超えてあまりにも明らかにし、その代わりに任意のより多くの例を与える、あなたは結果が与えられたため、次の総乗違いがあることを確認することができますしたくありませんN。 N Total squared difference 1 0 2 …
19 code-golf  array-manipulation  permutations  restricted-complexity  code-golf  geometry  grid  code-golf  string  sorting  code-golf  simulation  code-golf  string  code-golf  arithmetic  code-golf  sorting  code-golf  string  code-golf  sorting  code-golf  interpreter  code-golf  number  kolmogorov-complexity  natural-language  conversion  code-golf  random  internet  code-golf  board-game  code-golf  number  sequence  code-golf  math  number  code-challenge  image-processing  classification  test-battery  code-golf  ascii-art  code-golf  tips  code-golf  arithmetic  code-golf  tips  code-golf  tips  javascript  code-golf  array-manipulation  code-golf  ascii-art  code-golf  string  binary  code-golf  arithmetic  linear-algebra  matrix  code-golf  sequence  code-golf  math  number  arithmetic  code-golf  primes  code-golf  math  code-golf  array-manipulation  counting  code-golf  arithmetic  code-golf  quine  code-generation  polyglot  code-golf  math  kolmogorov-complexity  trigonometry  code-golf  string  encryption 

19
リバースとスクエア
このチャレンジでは、奇妙なシーケンスから数値を計算します。 入力は、単一の10進数の非負整数です。この整数のビットを逆にしてから、数値を2乗して必要な出力を取得します。 ビットを反転する場合、入力に先行ゼロを使用しないでください。例えば: 26 (base 10) = 11010 (base 2) -> 01011 (base 2) = 11 -> 11*11 = 121 このシーケンスの最初の25の入力/出力: 0: 0 1: 1 2: 1 3: 9 4: 1 5: 25 6: 9 7: 49 8: 1 9: 81 10: 25 11: 169 12: 9 13: 121 14: …

2
デームス、数学をしてください!
操作の順序であるPEMDASは、数学の基本的なルールであり、どの順序の操作を実行する必要があるかを示します。 「括弧、指数、乗算と除算、加算と減算」 問題は、PEMDASはあまり汎用性がないということです!別の順序で実行したい場合はどうしますか?括弧をいじらないので、括弧のある場所(最初)に保持します。 2つの引数を取るプログラムを作成します。 操作が続く順序を示す文字列。いくつかの例は"DAMES"、"SAD, ME"、"ME SAD"、"MEADS"。はい、順序を覚えやすくするため、スペースとカンマは問題ありません。 チャットでの次の提案:スペースとカンマのサポートはオプションになりました。 いずれかの文字が欠落している場合、またはそこにあるべきではない追加の文字がある場合、入力を無効とみなし、好きなように扱うことができます。 評価する必要のある文字列、または式を含む式。 式の結果を10進数または整数として返します。答えが整数でない場合は、10進数として返される必要があります。 ルール: ご使用の言語で簡単な場合は、2つの入力引数を1つに結合してもかまいません。 文字列である必要はありませんが、文字が必要です。Additionを1、Divisionを2などに置き換えることはできません。 最初の入力を選択できます。 式は右から左に評価されます左から右にれます。(ルールの変更。これとは逆の最初の12時間の投稿ポスターは受け入れられます)。 操作では次の記号を使用します( ) ^ * / + -。たとえば、追加の¤代わりに使用することはできません+。 入力式のスペースは入力として無効です 単項+/-は、+または-の直後に続く場合、入力として無効です。3+-2無効な入力と見なしてください。好きなように扱うことができます(エラーを生成する必要はありません)。場合+または-プラスまたはマイナス以外の演算子を次の、それはいつものように扱われます:3*-3 = -9、sin(-2)=-0.909 プログラムは厳密に文字に従う必要が"EMDAS", 1-3+4 => -6あり"EMDSA", 1-3+4 => 2ます。 例: Input: "EMDAS", "3+6*2/4-1" // -> 3+12/4-1 -> 3+3-1 -> 6-1 -> 5 Output: 5 Input: …

11
ベクトルの有界累積和を計算する
ベクトルの累積合計は、以前のすべての要素の合計を取得するだけで計算されます。例えば: vec = [1 1 1 -1 -1 -1 -1 -1 1 1 1 1 -1] cum_vec = [1 2 3 2 1 0 -1 -2 -1 0 1 2 1] ここで、上限と下限を課します。つまり、上限に達した場合は累積合計の増加を停止し、下限に達した場合は累積合計の減少を停止します。簡単な例: upper_lim = 2 lower_lim = -1 vec = [1 1 1 -1 -1 -1 -1 -1 1 1 …

26
標準偏差の計算
チャレンジ 数のリストが与えられたら、リストの母標準偏差を計算します。 母標準偏差を計算するには、次の式を使用します。 入力 入力は、任意の形式(リスト、文字列など)の整数のリストになります。いくつかの例: 56,54,89,87 67,54,86,67 数値は常に整数になります。 入力は、STDINまたは関数の引数になります。 出力 出力は浮動小数点数でなければなりません。 ルール 組み込み関数を使用して、標準偏差を見つけることができます。 あなたの答えは、完全なプログラムまたは機能のいずれかです。 例 10035, 436844, 42463, 44774 => 175656.78441352615 45,67,32,98,11,3 => 32.530327730015607 1,1,1,1,1,1 => 0.0 勝ち 最短のプログラムまたは機能が優先されます。 リーダーボード コードスニペットを表示 var QUESTION_ID=60901,OVERRIDE_USER=30525;function answersUrl(e){return"http://api.stackexchange.com/2.2/questions/"+QUESTION_ID+"/answers?page="+e+"&pagesize=100&order=desc&sort=creation&site=codegolf&filter="+ANSWER_FILTER}function commentUrl(e,s){return"http://api.stackexchange.com/2.2/answers/"+s.join(";")+"/comments?page="+e+"&pagesize=100&order=desc&sort=creation&site=codegolf&filter="+COMMENT_FILTER}function getAnswers(){jQuery.ajax({url:answersUrl(answer_page++),method:"get",dataType:"jsonp",crossDomain:!0,success:function(e){answers.push.apply(answers,e.items),answers_hash=[],answer_ids=[],e.items.forEach(function(e){e.comments=[];var s=+e.share_link.match(/\d+/);answer_ids.push(s),answers_hash[s]=e}),e.has_more||(more_answers=!1),comment_page=1,getComments()}})}function getComments(){jQuery.ajax({url:commentUrl(comment_page++,answer_ids),method:"get",dataType:"jsonp",crossDomain:!0,success:function(e){e.items.forEach(function(e){e.owner.user_id===OVERRIDE_USER&&answers_hash[e.post_id].comments.push(e)}),e.has_more?getComments():more_answers?getAnswers():process()}})}function getAuthorName(e){return e.owner.display_name}function process(){var e=[];answers.forEach(function(s){var r=s.body;s.comments.forEach(function(e){OVERRIDE_REG.test(e.body)&&(r="<h1>"+e.body.replace(OVERRIDE_REG,"")+"</h1>")});var a=r.match(SCORE_REG);a&&e.push({user:getAuthorName(s),size:+a[2],language:a[1],link:s.share_link})}),e.sort(function(e,s){var r=e.size,a=s.size;return r-a});var s={},r=1,a=null,n=1;e.forEach(function(e){e.size!=a&&(n=r),a=e.size,++r;var t=jQuery("#answer-template").html();t=t.replace("{{PLACE}}",n+".").replace("{{NAME}}",e.user).replace("{{LANGUAGE}}",e.language).replace("{{SIZE}}",e.size).replace("{{LINK}}",e.link),t=jQuery(t),jQuery("#answers").append(t);var o=e.language;/<a/.test(o)&&(o=jQuery(o).text()),s[o]=s[o]||{lang:e.language,user:e.user,size:e.size,link:e.link}});var t=[];for(var …

6
水で満たされたボウル
ボウルの容積とその中の水の容積を入力として受け取り、その中に水が入ったボウルのASCII表現を必要な容積で出力または返すプログラムまたは関数を作成する必要があります。 ボウルの構造は次のとおりです。 \ / \___/ ボウルには少なくとも1つの_キャラクターがあります。数\のと/のも正であり、彼らは対称性に起因する等しいです。 ボウルの量は、合計の数である_とspaceの間の文字\のと/のプラスのすべてのペアのための1 \と/。これは、上記のボウルの容積が10次のことを意味します。 \ / => xxxxx x (the last one is for the \/ pair) \___/ xxx x (the last one is for the \/ pair) 2つの異なるボウルの容積が同じである可能性があることに注意してください。たとえば、次の両方のボウルの容積は18です。 \ / \ / \ / \___/ \_______/ ボウルに水を注ぐことができます。水は~、ボウル内のスペースではなく、キャラクターの列として表されます。一番下の行にはスペースがないため、~「」を含めることはできません。これは、この例に一方向でのみ水を入れることができることを意味します。 \~~~~~/ \___/ 他のボウルには複数の方法で充填できます。 \~~~~~/ \ / \ / …

12
オリンピックリングシーケンス
チャレンジ: インデックス整数を指定するとn、nこのシーケンスの 'th番目のアイテムを出力するか、index までのシーケンスを出力しますn: 25,25,7,28,29,20,21,22,23,14,35,26,7,28,29,20,16,29,12,15,28,21,14,17,30,13,16,29,12,15,28,21,10,6,12,18,15,11,7,13,19,17,13,9,15,21,18,14,10,16,22,19,15,11,17,23,20,16,12,18,24,21,17,13,19,25,23,19,15,21,27,24,20,16,22,28,25,21,17,23,29,16,13,9,15,21,18,14,10,16,22,20,16,12,18,24,21,17,13,19 このシーケンスはどのように機能しますか? 注:この説明でnは、インデックスは1から始まります。長さの2行に 数字1を入力xしますn*6 - 1。ここxで、現在の反復と使用する数字の長さに依存し、nそれら2行の'右/右端のオリンピックリングの数字を合計します。 シーケンスの最初の数は次のように計算されます。 The length of the lines are 5 (because 1*6 - 1 = 5): 12345 67891(0) Then leave the digits in an Olympic Rings pattern: 1 3 5 7 9 And sum them: 1+3+5+7+9 = 25 だから、n=1その結果25。 シーケンスの2番目の数は、次のように計算されます。 The length …

30
私はゴルフ場ですか?
定義と規則 golfyアレイは、各要素が整数の配列であり、より高いまたは等しいすべての前の要素の算術平均。あなたの仕事は、入力として与えられた正の整数の配列がゴルフかどうかを判断することです。 空のリストを処理する必要はありません。 デフォルトの抜け穴が適用されます。 標準入出力メソッドが適用されます。 任意の2つの異なる空でない値を選択できます。それらは一貫している必要があり、他のすべての決定問題ルールを遵守しなければなりません。これはcode-golfで、各言語の最短コードが勝ちます! テストケースと例 たとえば、次の配列: [1, 4, 3, 8, 6] 各項がその前の項の算術平均よりも高いため、ゴルフ配列です。段階的に解決しましょう: 数->前の要素->平均->ルールに従いますか? 1-> []-> 0.0-> 1≥0.0(True) 4-> [1]-> 1.0-> 4≥1.0(True) 3-> [1、4]-> 2.5-> 3≥2.5(True) 8-> [1、4、3]-> 2.(6)-> 8≥2.(6)(True) 6-> [1、4、3、8]-> 4.0-> 6≥4.0(True) すべての要素が条件を尊重するため、これはゴルフの配列です。このチャレンジのために、空のリスト([])の平均はであると仮定することに注意してください0。 その他のテストケース: 入力->出力 [3]-> True [2、12]-> True [1、4、3、8、6]-> True [1、2、3、4、5]-> True [6、6、6、6、6]-> True [3、2]-> False …

18
逆算サイクル
これに触発されて リンクされたチャレンジでは、元の要素と入力配列の逆の要素に加算を適用するように求められます。この課題では、他の基本的な数学演算を導入することで、少し難しくします。 整数の配列が与えられた場合、を通過します+, *, -, //, %, ^。ここで、//は整数除算で、^指数です。配列の逆に適用します。または、言い換えると、上記の関数のいずれかを配列の各要素に適用します。2番目の引数は配列の逆で、適用される関数は上記のリストを循環します。これはまだわかりにくいかもしれませんので、例を見てみましょう。 Input: [1, 2, 3, 4, 5, 6, 7, 8, 9] Reverse: [9, 8, 7, 6, 5, 4, 3, 2, 1] [ 1, 2, 3, 4, 5, 6, 7, 8, 9] Operand: + * - / % ^ + * - [ 9, …

12
有理数のLCM
数字の組の最小公倍数(LCM)は、A最小の整数であるbそのようなb/a全ての整数の整数でありaにおけるA。この定義は有理数に拡張できます! 仕事 最小の正の検索合理的な bようb/aである整数のすべてのための有理数 aの入力では。 ルール 標準的な抜け穴は禁止されています。 入力では分子と分母を別々に使用できますが、double、floatなどは使用できません。 入力が完全に削減されない場合があります。 整数入力を分母の有理数としてとることができます1。 有理数をLCM / GCDビルトインに送信する送信は許可されますが、競合しません。 テストケース In: 3 Out: 3 In: 1/17 Out: 1/17 In: 1/2, 3/4 Out: 3/2 In: 1/3, 2/8 Out: 1 In: 1/4, 3 Out: 3 In: 2/5, 3 Out: 6 In: 1/2, 3/4, 5/6, 7/8 Out: 105/2 これはcode-golfであるため、最小限のバイトを使用した送信が勝ちです!

6
合計?それが私の得意です!
前書き Forteは、数値の値を変更するという概念に基づいた非常に特殊な難解な言語です。Forteの数値は定数ではなく変数であるため、LET命令を使用して新しい値を割り当てることができます。 たとえば、実行した後LET 2=4-1に、今から2の値を前提としてい3た値がいつでもあることを意味、2それは代わりで「置き換え」された表現で起動しますが3。これで式(1+1)*2はに評価され9ます。 Forteのこの命令は、情報の保存とフロー制御の両方に使用されます(行には番号が付けられ、番号の値を変更することで実行順序を決定できます)。この課題では、この2番目の側面を扱いません。 チャレンジ ForteのLET式の簡略化されたサブセット用のインタープリターを作成する必要があります。 入力として、この文法に続く一連の行を受け取ります。 <line>::= <number>=<expression> <expression>::= <number>|<expression>+<number> 注:この文法は、行番号、LET、および括弧(常に必須)がないため、有効なForteではありません。 つまり、合計の計算と数値への値の割り当てのみを処理する必要があります。括弧は入力に存在せず、各式は左から右に評価する必要があります:部分的な結果は再定義の影響を受けることに注意してください! 数値は常に、使用している言語のネイティブ整数型の制限(または2 ^ 32のいずれか大きい方)までの負でない整数になります。 各行について、式の結果を出力し、この結果を最初の数値の(場合によっては再割り当てされた)値に割り当てる必要があります。これは、後続の行の解釈方法に影響します。 これはcode-golfで、最短のコード(バイト単位)が勝ちです! その他の規則 入力形式は柔軟です。たとえば、改行を含む単一の文字列、文字列のリスト、数値のリストのリストを使用できます...入力。 関数、完全なプログラム、またはソリューションをサブミットして、REPL環境で実行し、各行に対して1回呼び出すことができます。 標準的な抜け穴は禁止されています。特に、コード内で外部のForteインタープリターを呼び出すことはできません。 例 これらはすべて同じ入力の一部です。各行の後に、その行に関連する予想される出力が表示されますが、関連する再割り当てを示すコメントが表示される場合もあります(必要な出力の一部ではありません)。 5=4 4 6=5 4 # 5 -> 4 7=1+2+5 7 7=5+2+1 4 # Order of operations matters! 5+2 -> 4+2 -> 6 -> 4 18=5+6+7 …

28
逆モジュラスを計算する
タスク: の値を出力します。xここでa mod x = b、2つの値がありますa,b。 仮定 aそして、b常に正の整数になります 常に解決策があるとは限りません x 複数のソリューションが存在する場合は、少なくとも1つを出力します。 解決策がない場合は、何も出力しないか、解決策が存在しないという兆候を出力します。 組み込みが許可されています(他の数学的アプローチほど面白くありません) 出力は常に整数です 例 A, B >> POSSIBLE OUTPUTS 5, 2 >> 3 9, 4 >> 5 8, 2 >> 3, 6 6, 6 >> 7, (ANY NUMBER > 6) 8, 7 >> NO SOLUTION 2, 4 >> NO …
18 code-golf  math  number-theory  code-golf  number  integer  code-golf  string  code-golf  music  code-golf  arithmetic  array-manipulation  decision-problem  code-golf  math  rational-numbers  code-golf  code-golf  graphical-output  hardware  code-golf  math  number  code-golf  string  parsing  natural-language  code-golf  tips  brain-flak  code-golf  graph-theory  code-golf  number  polynomials  king-of-the-hill  code-golf  ascii-art  kolmogorov-complexity  animation  king-of-the-hill  code-golf  tips  code-golf  ascii-art  code-golf  string  array-manipulation  data-structures  code-golf  math  number  code-golf  string  base-conversion  binary  code-golf  decision-problem  graph-theory  code-golf  math  polynomials  code-golf  kolmogorov-complexity  physics  code-golf  sequence  number-theory  code-golf  math  integer-partitions  code-golf  array-manipulation  random  permutations  code-golf  string  decision-problem 

17
xフィボナッチ数までの素数フィボナッチ数の算術平均
よくフィボナッチ数列と呼ばれるフィボナッチ数について聞いたことがあるはずです。このシーケンスでは、最初の2つの用語は0と1であり、最初の2つ以降のすべての数値は、先行する2つの用語の合計です。言い換えれば、F(n) = F(n-1) + F(n-2)。 最初の20個のフィボナッチ数列は次のとおりです。 0 1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987 1597 2584 4181 仕事: 整数を指定してx、フィボナッチ数x列までの素数フィボナッチ数の算術平均(平均)を計算します。 ルール: このチャレンジのフィボナッチ数列は0と1から始まります 3 < x < 40の値が大きいほど、x実行時間が非常に長くなるかオーバーフローする可能性があり、値が小さいほど出力がない 1は除数が1つしかないため、素数ではありません 算術平均には、小数が含まれている場合は小数を含めるか、正確な分数として表示する必要があります x入力として取得することのみが許可されており、入力を取得するために必要なコードはカウントされません(例:のようなものが必要なx = input()場合は、バイトをカウントするときに考慮しないでください) 例: 例 1:についてはx=10、出力された5.7510番目のフィボナッチ数であるため、55およびプライムフィボナッチ数まで55あり2, 3, 5, 13、それらの平均ビーイング5.75 例1の説明に続いて、他の例は次のとおりです。 例 2:の場合x=15、出力は57.5 例 …

30
強盗-平方時間平方根
タスク:整数nの平方根にその2乗を掛けるスクランブルコードを解読します。 警官のスレッドに作業ソースへのリンクを付けてコメントを投稿する必要があります。これには、クラックしたことを明記してください。回答のタイトルには、元の回答へのリンクを含める必要があります。 ルール: 元のソースの文字の順序のみを変更できます。 安全な回答はもはや解読できません。 警官のスレッドで言及されている他のルール 解答を編集してください 受賞者:エミグナ-10のサブミッション(数えるのに苦労しました) 敬意を表する:Notjagan、Plannapus、TEHTMI

16
Plus and Times、Ones and Nines
この繰り返し関係を、負でない整数を入出力する関数またはプログラムとして実装します。 F(0)= 0 F(N)= 10を底とする数字の和および/または積がNになるようなF(N-1)より大きい最小の整数 Nはプログラムの入力であり、F(N)はその出力です。 明確にするために、913などの数字の合計は9 + 1 + 3 = 13です。積は9×1×3 = 27です。1桁の数値の場合、合計と積は同じ数値です。もちろん、0を含む数字の製品は0です。 F(70)による結果は次のとおりです。 N F(N) 0 0 1 1 2 2 3 3 4 4 5 5 6 6 7 7 8 8 9 9 10 19 11 29 12 34 13 49 14 59 15 69 …

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