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

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

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 

3
グリッドは曲線を描くことができます。あなたはどれくらいですか?
幅W x高さHのテキストグリッド上に、曲線の一部を表し、空のスペースを表し、他の文字は使用されていない、シンプルでオープンな 2次元曲線を描くことを検討してください。X. すべてのグリッドスペースには、8つの隣接するグリッドスペース(ムーア近傍)があります。境界線を超えるグリッドスペースは空と見なされます。 グリッドに曲線が含まれるのは、正確に1つある場合、X または複数のX場所がある場合です: 正確には2つXのsには1つの隣接しかないX。これらは曲線の終点です。 Xエンドポイント以外のすべては、正確に2 X秒に隣接しています。これらは曲線の大部分を形成します。 たとえば、W = 9およびH = 4のこのグリッドには曲線が含まれます。 ....X.... .X.X.X.X. X..X..X.X .XX.....X 同様に、これらのグリッド(W = 4、H = 3)には曲線があります。 .... .X.. .... .... .X.X .... X..X ..X. XX.. X.X. ..X. .XX. .X.. .... .... ただし、これらのグリッドには曲線が含まれていません。 .... .XX. ...X XX.. .... X.X. .... X..X ..XX XX.. .X.X …

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ə …

30
文字列の累積勾配を出力します
チャレンジ などの文字列が与えられた場合、文字Hello World!値に分解します72, 101, 108, 108, 111, 32, 87, 111, 114, 108, 100, 33。 次に、連続する各文字ペアの差を計算します29, 7, 0, 3, -79, 55, 24, 3, -6, -8, -67。 最後に、それらを合計して最終結果を出力します-39。 ルール 標準的な抜け穴が適用されます この正確なタスクを実行する既製の機能を使用しない クリエイティブなソリューションが推奨されます 楽しんで これはcode-golfとしてマークされ、バイト単位の最短回答が勝ちますが、選択されません。

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 

9
10進数表現の繰り返しを見つけてください!
で、この挑戦 2年前、我々が見つかりました。期間(単位分数のを1/n where n is a natural number)。 さて、あなたの仕事は単位分数の繰り返しを見つけるプログラム/関数を書くことです。 repetendは同様に、無限に繰り返される小数展開の一部です: の10進表現は1/6です0.16666...、それからrepetendは6です。 の10進表現は1/11です0.090909...、それからrepetendは09です。 の10進表現は1/28です0.0357142857142857142857...、それからrepetendは571428です。 スペック 妥当な形式で入力してください。 繰り返しを10進数、文字列、またはリストで出力します。 1/7(0.142857142857...)については、出力する必要があります142857代わりに428571。 1/13(0.076923076923076923...)、あなたは出力しなければならない076923代わりに、76923。 総当たりはしないでください。 テストケース Input Output 1 0 2 0 3 3 7 142857 13 076923 17 0588235294117647 28 571428 70 142857 98 102040816326530612244897959183673469387755 9899 000101020305081321345590463683200323264976260228305889483786241034447924032730578846348115971310233356904737852308313971108192746742095161127386604707546216789574704515607637135064147893726639054449944438832205273259925244974239822204263056874431760783917567431053641781998181634508536215779371653702394181230427315890493989291847661379937367410849580765733912516415799575714718658450348520052530558642287099707041115264168097787655318719062531568845337912920497019901 得点 これはコードゴルフですです。バイト単位の最短ソリューションが勝ちます。 目標は最短のソリューションを作成できる言語を見つけることではなく、各言語で最短のソリューションを見つけることであるため、答えは受け入れられません。 リーダーボード コードスニペットを表示 var QUESTION_ID=78850,OVERRIDE_USER=42854;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 …

23
多角形の数字
多角形の数は、kサイズの1角形のドットの数ですn。 とが与えられn、kあなたの仕事は、対応する番号を出力/印刷するプログラム/関数を書くことです。 得点 これはcode-golfです。バイト単位の最短ソリューションが勝ちです。 例 3RD六角数は(k=6, n=3)で28あるので、28上記のドットが。 テストケース このPythテストスイートから生成できます。 使用法:テストケースごとに2行、n上、k下。 n k output 10 3 55 10 5 145 100 3 5050 1000 24 10990000 さらに詳しい情報 ウィキペディア:https : //en.wikipedia.org/wiki/Polygonal_number Wolfram Mathworld:http : //mathworld.wolfram.com/PolygonalNumber.html OEIS Wiki:http : //oeis.org/wiki/Polygonal_numbers さまざまなnのn対角数のOEISシーケンス:3 (A000217)、4 (A000290)、5 (A000326)、6 (A000384)、7 (A000566)、8 (A000567)、9 (A001106)、10 (A001107)、11 (A051682)、12 (A051624)、13 (A051865)、14 (A051866)、15 …

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
スムーズ対チャンキー対ブロークンスクイーグル
Chunky vs. Smooth Stringsに基づいています。 /\_/\/\__/\/\/\/\_/\_/\あなたが本当に退屈しているとき、波線はキーボードで作るのが楽しいです。しかし、すべての波線が平等に作成されるわけではありません。いくつかの波線はのよう\___/に滑らかで、いくつかはのようにずんぐりしてい/\/\/\/\ます。他のものはまったく壊れています////_\\\ Nキャラクターのあらゆる波線の中に、波線N-1ジャンクションがあります。各波型ジャンクションは、次の3つのタイプのいずれかに分類されます。 スムーズ(角度>「90度」): \_ __ _/ 分厚い(角度=「90度」) /\ \/ 壊れた(接続しないもの) // \\ /_ _\ レッツは、定義滑らかにし、滑らかで接合の割合であることをchunkinessと壊れた同様に定義します。各値の範囲は0〜1です。波線の滑らかさ、チャンクネス、および破損の合計は、常に1に等しくなります。 たとえば、波線に/\/\\_//\_は3つの滑らかなジャンクション、4つの分厚いジャンクション、2つの壊れたジャンクションがあります。このように0.3333滑らかで、0.4444分厚い、0.2222壊れています。 空の文字列と1文字のみの文字列には未定義の値があり、すべての入力は少なくとも2文字の長さになります。 チャレンジ 任意の長さの波線を取り込んで、その滑らかさ、チャンクネス、および破損の値のいずれか2つを出力するプログラムを作成します。 STDIN、コマンドライン、または文字列引数を介した入力を使用して、プログラムまたは関数を作成できます。 入力は少なくとも長さ2以上で/\_、オプションの末尾改行を含む文字のみで構成されていると想定できます。 2つの浮動小数点数を、小数点以下4桁以上で丸めまたは切り捨てて印刷(または関数の場合は戻り)します。真の値である場合は2/3、許容値は、いずれかの間の値が含ま0.6666と0.6667、のようにも物事を0.666637104。正確な値がの場合、1/3含む回答0.3333はすべて有効です。後続のゼロは省略できますが、値が1より小さい場合は、先行のゼロを省略できます。 必要に応じて、3つの値の任意のペアを出力します。必ず、2つと順序を指定してください。 バイト単位の最短コードが優先されます。 例 /\/\\/\//\\→滑らかさ0、分厚さ0.7、破損0.3 _/\\_/\\/__/\\\//_→滑らかさ0.29411764705、分厚さ0.29411764705、破損0.41176470588 //\\__/_\/→滑らかさ0.3333333、分厚さ0.2222222、破損0.4444444 おまけの質問:なめらか、チャンキー、壊れた波線のどちらが好きですか?

1
有効な迷路の数
与えられたWxHグリッドを、どのように多くの可能な迷路がありますか? 迷路について知っていること: グリッドのH高さは正確に正方形で、W幅は正方形です。 開始、終了、空の3つのタイプの正方形があります。迷路には、開始と終了がそれぞれ1つだけ含まれている必要があり、残りのすべての正方形は空です。 迷路全体を囲む壁があります。 以下の規則に違反しない限り、壁は任意の2つの正方形の間のエッジに存在できます。 開始広場から終了広場までのパスが存在する必要があります。 したがって、との2つの数値を指定するWとH、可能な正方形/壁構成の数を表す単一の数値を返す必要があります。あなたは保証されていますW*H > 1 たとえば、2x2迷路の100構成はまったく異なります。 これはコードゴルフなので、最短の答えが勝ちです!

3
円周率の切り捨てられた数字の計算
正の整数nを出力すると、最初のnの合計の小数部の桁π N。 入力と出力の例: 1→1 2→14 3→6 4→13 5→24 50→211 →211500 →2305 5000→22852 πの数字を計算する組み込み関数たり、べき級数や連続分数を評価したりするは許可されていません。標準の抜け穴が適用されます。入力/出力は便利な形式(stdin、stdout、関数in / outputなど)にすることができます。 バイト単位の最短コードが優先されます。

5
NをM個の整数の積として書く方法はいくつありますか?
整数Nが与えられた場合、M整数> 1の積として表現できる方法の数をカウントします。 入力は単純にNおよびMであり、出力は個別の整数グループの総数です。つまり、整数を複数回使用できますが、各グループは別個でなければなりません(存在する3 x 2 x 2場合2 x 2 x 3はカウントされません)。 制約 1 < N <2 31 1 < M <30 例 入力30 2は33つの方法で表現できるため、outputを提供します。 2 x 15 3 x 10 5 x 6 入力16 3はoutputを提供します。これは1、異なるグループが1つしかないためです。 2 x 2 x 4 入力2310 4は出力を与えます10: 5 x 6 x 7 x 11 3 …

7
混合ベース変換
バックグラウンド ここのほとんどの人は、10進数、2進数、16進数、8進数などのいくつかの基本システムに精通している必要があります。たとえば、16進数システムでは、番号12345 16は次を表します。 1*16^4 + 2*16^3 + 3*16^2 + 4*16^1 + 5*16^0 通常、ベース(ここでは16)が数字から数字に変わることを期待していないことに注意してください。 これらの通常の位置システムを一般化すると、数字ごとに異なる数値ベースを使用できます。たとえば、10進法と2進法を交互に使用している場合(最下位の10から始まる)、190315 [2,10]は次のようになります。 1*10*2*10*2*10 + 9*2*10*2*10 + 0*10*2*10 + 3*2*10 + 1*10 + 5 = 7675 このベースをとして示し[2,10]ます。一番右のベースが対応する最も重要な数字。次に、数字(左)を通り抜けながら(左)底を通り、底よりも多くの数字がある場合は折り返します。 詳細については、Wikipediaを参照してください。 チャレンジ 数字のリストが与えられると、プログラムや関数書き込みD入力ベースIと出力ベースO、で表される整数変換DベースからIベースにしますO。STDIN、ARGV、または関数引数を介して入力を取得し、結果を返すか、STDOUTに出力できます。 あなたは仮定するかもしれません: Iおよびの数値Oがすべてより大きいこと1。 非空です。IO 入力番号が指定された基数で有効であること(つまり、その基数よりも大きい数字がないこと)。 D空(を表す0)にすることも、先頭にゼロを付けることもできます。出力に先行ゼロが含まれていてはなりません。特に、表す結果0は空のリストとして返される必要があります。 組み込みまたはサードパーティのベース変換関数を使用しないでください。 これはコードゴルフで、最短の回答(バイト単位)が勝ちです。 例 D I O Result [1,0,0] [10] [2] [1,1,0,0,1,0,0] [1,0,0] [2] …

6
整数格子の誤検知
リーダーボード User Language Score ========================================= Ell C++11 293,619,555 feersum C++11 100,993,667 Ell C++11 78,824,732 Geobits Java 27,817,255 Ell Python 27,797,402 Peter Taylor Java 2,468 <reference> Julia 530 バックグラウンド 整数座標の2次元グリッドで作業する場合、2つのベクトル(整数成分を持つ)が同じ大きさであるかどうかを知りたい場合があります。もちろん、ユークリッド幾何学では、ベクトルの大きさは(x,y)で与えられます √(x² + y²) したがって、単純な実装では、両方のベクトルについてこの値を計算し、結果を比較します。不必要な平方根の計算が発生するだけでなく、浮動小数点の不正確さの問題も発生します。 この課題の目的のために、私たちは定義偽陽性を座標ペアのペアと(a,b)して(c,d)います: 64ビットの符号なし整数として表される場合、それらの2乗の大きさは異なります。 64ビットの2進浮動小数点数として表され、64ビットの平方根(IEEE 754に準拠)で計算される場合、それらの大きさは同じです。 例として、(64の代わりに)16ビット表現を使用すると、誤検知を生じる最小の1組のベクトルは (25,20) and (32,0) それらの2乗2乗の大きさは1025と1024です。平方根の利回りを取得する 32.01562118716424 and 32.0 しかし、16ビットの浮動小数点数では、これらの両方がに切り捨てられ32.0ます。 同様に、32ビット表現に対して偽陽性をもたらす最小の2ペアは (1659,1220) and (1951,659) …

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