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

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

30
非ゼロデジタル製品の課題
もともと乗法的デジタルルート チャレンジ 基本的にタイトルが言うことをする 方法 標準入力メソッドのいずれかで正の整数1 <= N <= 100000000が与えられた場合、 ゼロを無視してすべての数字を乗算します。 例:数字を入力して361218402ください: 3* 6=18 18* 1=18 18* 2=36 36* 1=36 36* 8=288 288* 4=1152 1152* 1 (ゼロを無視するか、1に変換します) =1152 1152* 2=2304 の出力361218402は2304 テストケース 1 => 1 他のすべての数字> 0 =>それ自体 10 => 1 20 => 2 100 => 1 999 => 729 21333 …

7
1つの式、多くの値
使い慣れた数学記号:+、x、括弧、および任意の有理数を使用して、希望する数に評価される式を簡単に作成できます。例:1+(2x3)=7など(1+2)+(3x6.5)=22.5。十分に退屈。 この課題では、新しい演算子を使用します±。使用±あなたは置き換えることにより、式を評価する必要がある表現手段で±でさんの+か、-すべての可能な方法で、すべての可能な値のセットを返します。例えば: 1±2±3 = {-4,0,2,6}理由1±2±3のいずれかとすることができる1+2+3、1+2-3、1-2+3と1-2-3、その値は6,0,2,-4それぞれ。 (±2)x(2±3) = {-10,-2,2,10} 同様の理由で。 さて、それは明確な実数の任意のセットを考えると、結局のところ、それが持つ式を作成することが可能だ+、x、(、)、±、および実数評価される指定されたセットに。 仕事 あなたの仕事はのシーケンスを取り、お好みの言語でプログラムや機能、(リスト/配列/任意の便利な形式)書くことである整数から成る(文字列として)の発現と出力を+、x、(、)、±、および有理数与えられた数のセットに評価されます。 正確な文字±は重要ではないことに注意してください。使用している他の文字と区別できる限り、他の任意の文字を使用できます。ただし、提出に使用しているキャラクターに言及する必要があります。 入力は、使用される有理数の小数近似(妥当な精度まで)で構成されることが許可されます。 入力と出力は、標準的な方法で取得できます。 標準的な抜け穴は禁止されています。 指定された整数は明確であり、昇順で提供されると想定できます。 出力にはスペースと改行が含まれる場合があります。 受賞基準 これはcode-golfなので、バイト単位の最短コードが優先されます。 例 入力| 可能な出力 ------------- + ----------------------------- [1,2,3] | 2±0.5±0.5 [-7、-3,1,21] | (1±2)x(3±4) トーナメントオブタウンズ、2015年秋の質問からのアイデア。

22
四分位平均
仕事 ソートされた浮動小数点データセットを(何らかの方法で)与えられた場合、(何らかの方法で、正しい値の1‰以内で)四分位平均を返します。 1つの可能なアルゴリズム データポイントの最低および最高の四半期を破棄します。 残りのデータポイントの平均(合計をカウントで割った値)を計算します。 注:データセットのサイズが4つに均等に分割できない場合、サブセットで共有されるデータポイントを比較検討する必要があります。下記の評価例2を参照してください。 評価例1 与えられた{1、3、4、5、6、6、7、7、8、8、8、9、38} 我々は最低と最高3のデータポイントを削除するように、データ数は、12である:{ 1、3、4、 5、6、6、7、7、8、8、9、38 } 残りの6つのデータポイントの平均:(5 + 6 + 6 + 7 + 7 + 8)/ 6 = 6.5 評価例2 与えられた{1、3、5、7、9、11、13、15、17} カウントは9なので、各四半期には2¼データポイントがあります:{ 1、2、(0.25×5)、(0.75×5)、7、9、11 、(0.75×13)、(0.25×13)、 15、17 } 残りの4.5データポイントの平均:(0.75×5 + 7 + 9 + 11 + 0.75×13)/ 4.5 = 9

21
コード内のミラー、ミラー
多くの場合、2次元プログラミング言語には、グリッド上の命令ポインターをリダイレクトするためのミラーコマンドが/あります\。 >>>>\ v v <<<</ この課題では、着信方向とミラーを指定し、発信方向を決定する必要があります。 ルール 到来方向は、文字の一つとして説明するNESWと、ミラーは、いずれかとして与えられる/、または\。これらは任意の順序で受け取ることができます。大文字を使用する必要があります。 2文字の文字列、文字間の区切り文字を使用した文字列、リスト内の文字のペア、またはシングルトン文字列のペアなど、任意の便利な形式で入力を取得できます。区切り文字付きの文字列を使用する場合、区切り文字には文字を使用できませんNWSE\/。 出力は、からの文字NESWまたは単一文字の文字列でなければなりません。 プログラムまたは関数を作成し、入力を受け取り出力を提供する当社の標準的な方法のいずれかを使用できます。 任意のプログラミング言語を使用できますが、これらの抜け穴はデフォルトでは禁止されています。 これはcode-golfであるため、バイト単位で測定される最短の有効な回答が勝ちます。 テストケース 処理する必要がある入力は8つしかないため、すべてのコードをテストしない理由はありません。 N / --> W N \ --> E E / --> S E \ --> N S / --> E S \ --> W W / --> N W \ --> S

29
部分文字列合計セット
前書き この配列を見てみましょう:[3, 2, 4, 1, 1, 5, 1, 2]。 各要素には、合計する必要がある部分文字列の長さが表示されます。上記の配列の最初の要素を見てみましょう。 [3, 2, 4, 1, 1, 5, 1, 2] ^ 最初のインデックスの要素は3なので、開始位置と同じインデックスを持つ長さ3の部分文字列を取得します。 [3, 2, 4] 合計すると、これは9になるため、部分文字列合計セットの最初の要素は9です。 配列内のすべての要素に対してこれを行います。 3 -> [3, 2, 4] 2 -> [2, 4] 4 -> [4, 1, 1, 5] 1 -> [1] 1 -> [1] 5 -> [5, 1, …

6
1 + 1 = 10、1 + 2 = 3
基数10と基数2の両方で単純な算術演算(加算、減算、乗算、除算)を実行できる関数またはプログラムを記述します。 この関数は、数式を入力として受け取り、正しいベースで正しい結果を出力します。入力はn、1つまたは複数の演算子(+ - * /)で区切られた数字になります。 すべての入力値に0と1のみが含まれる場合、すべての値はバイナリと見なされます。少なくとも1桁がの場合2-9、すべての値は基数10と見なされます。 ルール: 数字の間に演算子が1つだけあると仮定できます(表示10*-1されません) 括弧がないと仮定できます。 通常の演算子の優先順位(疑問がある場合は、Google計算機で式を試してください)。 整数しか存在しないと仮定することはできません 入力または出力に先行ゼロはありません 有効な入力のみが与えられると仮定できます すべての入力値が正であると仮定できます(ただし、マイナス演算子を使用すると負の出力が可能になる場合が1-2=-1あります10-100=-10) REPLは受け入れられません 入力を個別の引数または単一の引数として選択することもできますが、入力は正しい順序でなければなりません。 つまり、あなたは表すことができる1-2入力引数で1、-、2、ではなく1、2、-。 など+ - * /ではなくplus、入力で記号を受け入れる必要がありますminus。 浮動小数点値をサポートする必要があります(または言語の最大制限まで、ただし整数のみのサポートは受け入れられません)。 eval 受け入れられます 例: 1+1 10 1010+10-1 1011 102+10-1 111 1+2+3 6 10*10*10 1000 11*11*11 11011 10*11*12+1 1321 10.1*10.1 110.01 20.2*20.2 408.04 10/5 2 110/10 11 Also accepted (optional …

30
プラスマイナスシーケンス
プラスマイナスシーケンス プラスマイナスシーケンスは、2シードで始まるものです、a(0)とb(0)。このシーケンスの各反復は、シーケンスの前の2つのメンバーの加算と減算です。つまり、a(N) = a(N-1) + b(N-1)そしてb(N) = a(N-1) - b(N-1)。 目的無限大またはK与えられた最初のステップで、プラスマイナスシーケンスを生成しますK。これを行うには、無限出力プログラム、ジェネレーター、または最初のKステップを提供する関数/プログラムを使用します。出力の順序は、一貫している限り重要ではありません。(b(K) a(K)つまりa(K) b(K)、間に数値や改行を含まない区切り文字を挿入します。)出力は入力から開始する必要があります。 テストケース 10 2(の入力)のa(0) b(0)場合、これは最初のKアプローチ(または無限アプローチのサブセクション)の可能な出力です。 10 2 12 8 20 4 24 16 40 8 48 32 80 16 96 64 160 32 192 128 320 64 384 256 640 128 768 512 1280 256 1536 1024 2560 …

18
はしごを組み立てる
前書き はしごを作りたいです。このために、私は廃品置き場から、穴の開いた2つの長いボードを清掃しまし​​た。これらの穴にステップを配置したいと思います。ただし、穴が均等に配置されていないため、ステップが少し不安定になり、それらに必要なロッドの量を見積もることが難しくなります。あなたの仕事は私のために計算をすることです。 入力 入力は、2つのボードを表す整数の配列として与えられる2ビットのベクトルです。A 0は、穴のない1オード(距離の任意の単位)1のセグメントを表し、aは、単一の穴のある1オードのセグメントを表します。配列の長さは異なり、1sの数も異なりますが、空にはなりません。 はしごを次のように構築します。まず、2つのボードを正確に1オード離して配置し、左端を揃えます。インデックスごとに、最初のボードのth穴と2番目のボードiのith穴の間の距離を測定し、iロッドを切断して、2つの穴の間に取り付けます。いずれかのボードの穴がなくなると停止します。 出力 出力は、ステップに必要なロッドの合計量であり、オードで測定されます。出力は、少なくとも6桁の有効数字まで正しいはずです。 例 入力[0,1,1,0,1,1,1,1,0,0]とを考慮してください[1,0,0,1,1,1,0,0,1]。結果のはしごは次のようになります。 このラダーのロッドの全長は7.06449510224598オードです。 ルール 関数または完全なプログラムのいずれかを作成できます。最小のバイトカウントが優先され、標準の抜け穴は許可されません。 テストケース [0] [0] -> 0.0 [0] [1,0] -> 0.0 [1,0,0] [1,1,1,1,1] -> 1.0 [0,1,0,1] [1,0,0,1] -> 2.414213562373095 [0,1,1,0,1,1,1,1,0,0] [1,0,0,1,1,1,0,0,1] -> 7.06449510224598 [1,1,1,1,1] [0,0,1,1,0,1,0,0,1] -> 12.733433128760744 [0,0,0,1,0,1,1,0,0,0,1,1,1,0,0,1,0,1,1,0,0,0,1,0] [0,0,1,1,0,1,1,1,0,0,0,0,0,1,1,0,1,1,0,0,0,1] -> 20.38177416534678

30
ゼロサムカウント
与えられたプログラムまたは機能を記述≥1 N ±1±2、±3±...±へ戻るソリューションの数N = 0。 n = 6の場合、解は存在しないため、答えは0です。n= 4の場合、解は2つありますので、答えは2です(2つの解は1-2-3 + 4 = -1 + 2 + 3-4 = 0)。 これは、OEISシーケンスA063865です。入力/出力の例は次のとおりです。 n a(n) 1 0 2 0 3 2 4 2 5 0 6 0 7 8 8 14 9 0 10 0 11 70 12 124 13 0 14 0 …

22
再帰的な文字列置換
タスク 3つの文字列を指定してA, B, C、Binの各インスタンスがでA再帰的に置換された出力文字列を生成するプログラムまたは関数を記述しCます。再帰的に置換とは、各ステップで重複しないBinのすべてのインスタンスA(左から右に貪欲に選択)がに含まれなくなるCまで置換を繰り返すことを意味BしAます。 入出力 I / Oにはデフォルトのメソッドを使用できます。 文字列には、印刷可能なASCII文字のみが含まれます(また、それらのいずれかが含まれることもあります)。 B一方で、空の文字列になることはありませんAし、Cかもしれません。 文字列はプレーンテキストとみなされます。たとえば、扱うことはできません B。、正規表現パターンとして。 入力の一部の組み合わせは終了しません。これらの場合、プログラムは何でもできます。 テストケース これらは次の形式です。 A/B/C\nOutput Hello, world!/world!/PPCG Hello, PPCG Uppercase is up/up/down Uppercase is down ababababa/aba/ccc cccbcccba delete/e/{empty string} dlt {empty string}/no/effect {empty string} llllrrrr/lr/rl rrrrllll +-+-+-+/+-+/+ + ababababa/aba/bada badabbadbada abaaba/aba/ab abb ((())())())/()/{empty string} ) 終了しない例: grow/ow/oow loop/lo/lo
25 code-golf  string  substitution  code-golf  math  code-golf  string  set-theory  code-golf  code-golf  compile-time  code-golf  kolmogorov-complexity  binary  code-golf  sequence  cops-and-robbers  code-golf  subsequence  card-games  code-golf  sequence  primes  code-golf  code-golf  number  graphical-output  music  code-golf  ascii-art  code-golf  string  lambda-calculus  code-golf  string  code-generation  code-golf  unicode  code-golf  math  combinatorics  code-golf  balanced-string  code-golf  sequence  cops-and-robbers  code-golf  sequence  cops-and-robbers  code-challenge  fastest-code  chess  code-golf  math  graphical-output  code-golf  string  hello-world  animation  code-golf  number  arithmetic  code-golf  integer  code-golf  code-golf  combinatorics  code-golf  kolmogorov-complexity  graphical-output  code-golf  string  code-golf  code-golf  game  code-golf  math  combinatorics  code-golf  ascii-art  popularity-contest  random  code-golf  arithmetic  number-theory  integer  code-golf  tips  underload  code-golf  math  sequence  primes  code-golf  math  path-finding  code-golf  ascii-art  primes  code-golf  kolmogorov-complexity  alphabet 

30
階乗の合計
課題は、数値の階乗の桁合計を計算することです。 例 Input: 10 Output: 27 10!= 10×9×...×3×2×1 = 3628800、および数字10の数字の合計!3 + 6 + 2 + 8 + 8 + 0 + 0 = 27 入力は0より大きい整数であることが期待できます。出力はどのタイプでもかまいませんが、答えはコーディング言語の標準ベースである必要があります。 テストケース: 10 27 19 45 469 4140 985 10053 注意一部の言語では、32ビット整数を超える大きな数値をサポートできません。これらの言語では、大きな階乗を計算することは期待されません。 マーティン・エンダーのおかげでここにOEISリンク これはcode-golfなので、文字の中で最も短いコードが勝ちです!

15
Transpile WordMath
私たちは皆、このようなオンラインの「数学hax」を見てきました。 Think of a number, divide by 2, multiply by 0, add 8. そして、魔法によって、誰もが8番になります! 言語 「WordMath」と呼ばれる上記のテキストの構文を使用するプログラミング言語を定義しましょう。WordMathスクリプトは、次のテンプレートに従います。 Think of a number, <commandlist>. これは基本的に、最初のアキュムレーターとして(STDINからの入力として)数値を取得し、その数値に対してすべてのコマンドを実行し、結果を出力します。 コマンドは区切り文字,(コンマ+スペース)で区切られます。有効なコマンドは次のとおりです(#負でない整数を表すことに注意してください)。 add #/ subtract #-アキュムレーターから値を加算/減算します。 divide by #/ multiply by #- floordiv指定された値によって乗算/アキュムレータ。 subtract from #-に似てsubtractいますが、acc = # - acc代わりにacc = acc - # repeat-最後のコマンドを再度実行してください。これを最初のコマンドにすることはできませんが、複数の連続した繰り返しをサポートする必要があります。 チャレンジ あなたの仕事は、入力として有効なWordMathスクリプトを取り、プログラムや関数を作成することです transpilesあなたのコードが入っている同じ言語で-有効なフルプログラムにそれを。 たとえば、私のコードがPython …

24
カンガルーシーケンスを計算する
バックストーリー 免責事項:カンガルーに関する情報が含まれている場合があります。 カンガルーはいくつかの開発段階を通過します。彼らは年をとって強くなるにつれて、より高く、より長くジャンプすることができ、空腹になる前に何度もジャンプすることができます。 ステージ1では、カンガルーは非常に小さく、まったくジャンプできません。これにもかかわらず、常に栄養が必要です。このようにステージ1のカンガルーの活動パターンを表すことができます。 o ステージ2では、カンガルーは小さなジャンプをすることができますが、空腹になる前に2つを超えることはできません。このようにステージ2のカンガルーの活動パターンを表すことができます。 o o o o o ステージ2の後、カンガルーはすぐに改善します。その後の各段階で、カンガルーは少し高く(グラフィック表示では1単位)、2倍にジャンプできます。たとえば、ステージ3のカンガルーの活動パターンは次のようになります。 o o o o o o o o o o o o o o o o o ジャンプにはエネルギーが必要なので、カンガルーは各活動パターンを完了した後に栄養を必要とします。必要な正確な金額は、次のように計算できます。 ステージnカンガルーの活動パターンの各oにその高さ、つまり1からnまでの数字を割り当てます。ここで、1は地面に対応し、nは最高位置に対応します。 アクティビティパターンのすべての高さの合計を計算します。 たとえば、ステージ3のカンガルーの活動パターンには、次の高さが含まれます。 3 3 3 3 2 2 2 2 2 2 2 2 1 1 1 1 1 …

30
ホフスタッターQシーケンス
定義 a(1)= 1 a(2)= 1 a(n)= a(na(n-1))+ a(na(n-2))n> 2の場合(nは整数) 仕事 正の整数を指定するとn、が生成されa(n)ます。 テストケース n a(n) 1 1 2 1 3 2 4 3 5 3 6 4 7 5 8 5 9 6 10 6 11 6 12 8 13 8 14 8 15 10 16 9 17 10 18 11 …

30
ハッピーラウンドパイデイ
Rounded Pi Dayを祝うために、今日の日付を利用して、円の直径を取り込み、直径に3.1416を掛けて円周を出力するプログラムを作成する必要があります。3.1416は、今日の日付を使用して取得する必要があります。 Input 3 Output 9.4248 etc. 入力として日付を取りません。日付のすべてのコンポーネントを使用する必要はありませんが、piの数字は、Dateオブジェクトをフォーマットするか、日付オブジェクトを使用して取得する必要があります。これまでの回答はよさそうです。 他に何を指定すべきかわからない。これまでのすべての答えは、私が期待していたものを満たしています。 私の制約は、日付のコンポーネントを使用してPiを作成する必要があるということでした。もちろん、コンポーネントを使用し、0を掛けてから3.1416を追加できますが、それは退屈で、貴重な文字を無駄にします! 最短のコードが勝ちます!

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