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

ある種のシーケンスを伴う課題に。

19
数字列
これは、整数百科事典のオンライン百科事典にないかなり簡単な配列です。 空のシーケンスから開始し、各用語をスペースなしでこれまでのシーケンスのすべての数字を英語で書き出すのに必要な文字数として定義します。* 参考のために、英語のすべての(10進数)桁の文字数は次のとおりです。 zero one two three four five six seven eight nine 4 3 3 5 4 4 3 5 5 4 (A52360とA5589の両方の始まりです。) これにより、空のシーケンスにゼロ桁が存在するため、最初のエントリがa (0 )= 0a(0)=0a(0) = 0になります。 これにより、現在存在する唯一の数字である「ゼロ」を書き込むのに4文字かかるため、2番目のエントリはa (1 )= 4a(1)=4a(1) = 4になります。 これにより、3つ目のエントリがa (2 )= 8a(2)=8a(2) = 8になります。これは、「zerofour」を書き込むのに合計8人で「4」を書き込むのにさらに4文字が必要だからです。 これにより、4番目のエントリがa (3 )= 13a(3)=13a(3) = 13になります。これは、「zerofoureight」を書き込むのに合計13人で「8」を書き込むのにさらに5文字が必要だからです。 これにより、5番目のエントリがa (4 …

22
数字のペアの説明で並べ替える
正の整数を指定すると、ペアで取得した数字で記述される新しい数字を作成できます(数字の奇数の場合は、先頭に0を追加します)。 例えば: 1234は1つ、2つ、3つの4として読み取ることができます。したがって、1234の出力は2444です。 643の桁数は奇数なので、先頭にゼロを追加して偶数にします。この場合、0643は次のように読み取ることができます:ゼロ6秒、4つの3秒。したがって、出力は3333になります。 (これはOEIS A056967です)。 タスク:正の整数の配列が与えられた場合、数字ペアで記述された値で昇順に並べ替えます。同じ値につながる入力番号の間で順序は関係ありません。 入力:正の整数の配列/リスト/セット。入力の先頭のゼロは許可されず、文字列/数字のリストなどとして入力されます。許可されていません-入力は、言語が使用できる限り整数/数値型に近いものでなければなりません。 出力:上記の方法でソートされた配列で、通常の方法(関数の戻り値/ STDOUT / voidへの叫びなど)で返されます。それらを個別に印刷し、数値、文字列、またはリストとして返すことができます。桁。 テストケース Input Output [19, 91, 2345, 2023] [19, 2023, 2345, 91] [25257, 725, 91, 5219, 146125, 14620512] [725, 5219, 14620512, 91, 146125, 25257] [123130415 3335 91 111111111 528 88] [528, 111111111, 123130415, 3335, 88, 91] [1 21 33 …

24
シーケンスステップを取得する
チャレンジ 一連の数字が与えられたら、一連のステップを返す関数を作成します。 シーケンスは次のようになります N >= 3 シーケンスは少なくとも1回ステップを繰り返します シーケンスには自然数のみが含まれます 関数またはプログラムは、可能な限り短い手順のシーケンスを返す必要があります 例: 入力: [1, 2, 3, 5, 6, 7, 9, 10, 11, 13, 14, 15, 17] 出力: [1, 1, 2] 説明:初期シーケンスはから始まります1 => 2 (1 step), 2 => 3 (1 step), 3 => 5 (2 steps)。その後、繰り返します。出力は[1 step, 1 step, 2 steps] => [1, …

12
一般化されたCantorセットのセグメント長
問題 単一の連続した間隔から開始して、まだ削除されていないすべての間隔の中間から合理的な長さのセグメントを繰り返し削除することにより、一般化されたCantorセットを定義しましょう。 削除するかどうかのセグメントの相対的な長さ、および実行する反復回数を考えると、問題は、反復後に削除された、またはされていないセグメントの相対的な長さを出力するプログラムまたは関数を作成することnです。 例:4番目と6番目の8番目を繰り返し削除する 入力: n – 0または1から始まるインデックス付きの反復回数 l-セグメントの長さのリストは、正の整数gcd(l)=1と奇数の長さで、削除されないセグメントから始まる、そのままの状態または削除される部分の相対的な長さを表します。リストの長さが奇数であるため、最初と最後のセグメントは削除されません。たとえば、通常のCantorセットの場合、これは3分の1が[1,1,1]になり、3分の1が削除され、3分の1が削除されます。 出力: 前の反復で削除されなかったセグメントがリストの縮小されたコピーで置き換えられるとき、th反復における相対セグメント長の整数リストo、。最初の反復はちょうどです。単項式であっても、明確な出力方法を使用できます。gcd(o)=1nl[1] 例 n=0, l=[3,1,1,1,2] → [1] n=1, l=[3,1,1,1,2] → [3, 1, 1, 1, 2] n=2, l=[3,1,1,1,2] → [9,3,3,3,6,8,3,1,1,1,2,8,6,2,2,2,4] n=3, l=[5,2,3] → [125,50,75,100,75,30,45,200,75,30,45,60,45,18,27] n=3, l=[1,1,1] → [1,1,1,3,1,1,1,9,1,1,1,3,1,1,1] 入力が有効であると想定できます。これはcode-golfであるため、バイト単位で測定される最短のプログラムが優先されます。

15
息子が手紙を見つけるのを手伝ってください
バックグラウンド 私の4歳の彼のラビから得たゲームに基づいています。 「目標」は、特定の順序で文字を「見つける」ことaecdbです。レターカードのスタックが与えられますdaceb。周期的ではありますが、指定された順序でのみスタックを検索できます。必要な手紙に出会ったら、それをスタックから取り出します。 目的 順序とスタック(相互の重複のない順列)を指定すると、ゲームのプレイ中に表示される一連の最上位スタック文字(すべて印刷可能なASCII)を見つけます。 ステップバイステップの例 aecdbスタックを指定して順序を見つける必要がありますdaceb。 スタックのトップd:探しているもの(a)ではないため、シーケンスに追加しd、スタックを取得するために回転します:acebd。 スタックのトップa:はい!したがって、シーケンスに追加daし、スタックから削除します:cebd。 スタックのトップc:探しているもの(e)ではないため、シーケンスに追加しdac、スタックを取得するために回転します:ebdc。 スタックのトップe:はい!したがって、シーケンスに追加daceし、スタックから削除します:bdc。 スタックのトップb:探しているもの(c)ではないため、シーケンスに追加しdaceb、スタックを取得するために回転します:dcb。 スタックのトップd:探しているもの(c)ではないため、シーケンスに追加しdacebd、スタックを取得するために回転します:cbd。 スタックのトップc:はい!したがって、シーケンスに追加dacebdcし、スタックから削除します:bd。 スタックのトップb:探しているもの(d)ではないため、シーケンスに追加しdacebdcb、スタックを取得するために回転します:db。 スタックのトップd:はい!したがって、シーケンスに追加dacebdcbdし、スタックから削除します:b。 スタックのトップb:はい!したがって、シーケンスに追加dacebdcbdbし、スタックから削除します:。 これで完了です。結果はdacebdcbdbです。 リファレンス実装 def letters(target, stack): string = '' while stack: string += stack[0] if stack[0] == target[0]: stack.pop(0) target = target[1:] else: stack.append(stack.pop(0)) return string print letters('aecdb', list('daceb')) オンラインでお試しください! テストケース try、yrt→yrtyry 1234、4321→4321432434 ABCDEFGHIJKLMNOPQRSTUVWXYZ、RUAHYKCLQZXEMPBWGDIOTVJNSF→RUAHYKCLQZXEMPBWGDIOTVJNSFRUHYKCLQZXEMPWGDIOTVJNSFRUHYKLQZXEMPWGIOTVJNSFRUHYKLQZXMPWGIOTVJNSRUHYKLQZXMPWIOTVJNSRUYKLQZXMPWOTVNSRUYQZXPWOTVSRUYQZXPWTVSRUYQZXWTVSRUYZXWTVSUYZXWTVUYZXWVYZXWYZXYZ …

11
一般化されたFiveThirtyEightシーケンス
このFiveThirtyEightのなぞなぞから適応。 バックグラウンド 次の無限シーケンスを調べます。 3 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 ... シーケンスに1インデックスが付けられているとします。iシーケンスの番目の数はどのように多くの決定3の前にあるS i番目2と以前の次2秒。したがって、シーケンスはで始まるため、シーケンスを開始する3必要が3 3 3 2あり3、シーケンスの先頭に3 があるため、サブシーケンスは3 3 3 23回繰り返す必要があります。3 3 2シーケンスの4番目の数字はであるため、その後に到達します2。 FiveThirtyEightのなぞなぞは、3対2の比率の制限を求めます(ここでは損しません)が、indexの後に累積比率が何であるかを尋ねることもできますi。たとえば、の比率はでi=4あり3/1 = 3、でi=15ある11/4 = 2.75。 一般的になりましょう 数字を考えるnとk、私たちはで始まる類似の配列にすることができn、元の配列は、インデックスの数が記述と同じようにi多くの方法を決定するnのは、前に現れi番目kと以前の次k秒。 例: n=2, k=5 シーケンスを与える 2 2 5 2 2 …

9
整数平方根のシーケンス
整数平方根のシーケンスを定義しましょう。まず、a(1)=1。次に、a(n)は、これまでに見られなかった最小の正の整数です。 sqrt(a(n) + sqrt(a(n-1) + sqrt(... + sqrt(a(1))))) 整数です。いくつかの例: a(2)は3で、これsqrt(a(2) + sqrt(a(1))) = sqrt(a(2) + 1)は整数であるような最小の整数であり、以前にシーケンスに3が出現していなかったためです。 a(3)は、整数である最小の整数であるためsqrt(a(3) + sqrt(a(2) + sqrt(a(1)))) = sqrt(a(3) + 2)、2であり、2は前のシーケンスでは発生していません。 sqrt(a(4) + 2)整数であるため、a(4)は7 です。シーケンスに2がすでに発生しているため、a(4)= 2を使用できませんでした。 パラメーターnを指定したプログラムまたは関数を作成すると、一連の数値a(1)からa(n)が返されます。 シーケンスは1,3,2,7,6,13,5、...から始まります。 このシーケンスのソースは、このMath.SE質問からのものです。 シーケンスの最初の1000個の要素のプロット:

30
消える要素
文字列Sとインデックスのリストを指定すると、その結果をの新しい値として使用しながら、の各インデックスの要素を削除してX変更SしSますS。 例えば、与えられたS = 'codegolf'とX = [1, 4, 4, 0, 2]、 0 1 2 3 4 5 6 7 | c o d e g o l f | Remove 1 c d e g o l f | Remove 4 c d e g l f | Remove 4 c …
17 code-golf  string  array-manipulation  code-golf  string  ascii-art  code-golf  number  sequence  pi  code-golf  number  array-manipulation  code-golf  string  ascii-art  code-golf  math  number  game  code-golf  math  sequence  polynomials  recursion  code-golf  math  number  sequence  number-theory  code-golf  permutations  balanced-string  code-golf  string  ascii-art  integer  code-golf  decision-problem  hexagonal-grid  code-golf  ascii-art  kolmogorov-complexity  code-golf  number  code-golf  matrix  binary-matrix  code-golf  math  statistics  code-golf  string  polyglot  code-golf  random  lost  code-golf  date  path-finding  code-golf  string  code-golf  math  number  arithmetic  number-theory  code-golf  tetris  binary-matrix  code-golf  array-manipulation  sorting  code-golf  number  code-golf  array-manipulation  rubiks-cube  cubically  code-golf  grid  optimization  code-golf  math  function  code-golf  string  quine  code-golf  ascii-art  grid  code-golf  decision-problem  grid  simulation  code-golf  math  sequence  code-golf  path-finding  code-golf  ascii-art  grid  simulation  code-golf  number  whitespace  code-golf  sequence  code-golf  sequence  code-golf  sequence  integer  code-golf  math  game  code-golf  internet  stack-exchange-api  code-golf  sequence  code-golf  internet  stack-exchange-api  code-golf  math  factoring  code-challenge  sequence  polyglot  rosetta-stone  code-golf  string  browser  code-golf  date  code-golf  base-conversion  code-challenge  cops-and-robbers  hello-world  code-golf  cops-and-robbers  hello-world 

12
このシーケンスはグラフィックですか?
グラフィック・シーケンスはそれぞれのノードに対してエッジの数を表す正の整数のシーケンスである単純なグラフ。たとえば、シーケンス2 1 1は、2つのエッジと1つの接続を持つ2つの3つのノードを持つグラフを示します。 すべてのシーケンスがグラフィックシーケンスであるとは限りません。たとえば、2 12つのノードを接続してその一方に2つのエッジを持たせる方法がないため、グラフィックシーケンスではありません。 仕事 合理的な方法で整数のシーケンスを取得します。これには、整数の配列とそのサイズ、符号なし整数のリンクリスト、および倍精度ベクトルが含まれますが、これらに限定されません。入力にゼロがないと仮定できます。また、入力が最小から最大または最大から最小にソートされていると想定することもできます。 シーケンスがグラフィックシーケンスであるかどうかを出力する必要があります。それ以外の場合、偽の値である場合は、真の値。 ゴール これはコードゴルフです。目標はプログラムのバイト数を最小限にすることです テストケース 大きい順に並べ替え -> True 3 3 3 2 2 2 1 1 1 -> True 3 3 2 2 1 1 -> True 3 3 2 -> False 8 1 1 1 1 1 1 1 1 -> True 1 …

15
オイラー数を計算する
オイラー数 A(n, m)の順列の数であり、[1, 2, ..., n]正確にここでm要素が前の要素よりも大きいです。これらはライズとも呼ばれます。たとえば、の場合n = 3、3!= 6個の順列[1, 2, 3] 1 2 3 < < 2 elements are greater than the previous 1 3 2 < > 1 ... 2 1 3 > < 1 ... 2 3 1 < > 1 ... 3 1 2 > < 1 …

16
ナラヤナ-ジデック-カペル数
入力nを指定して、n番目のNarayana-Zidek-Capell数を生成します。少ないバイトが勝ちます。 f(1)= 1、f(n)は前のfloor(n / 2)ナラヤナ-ジデック-カペル項の合計です。 テストケース: f(1)=1 f(9)=42 f(14)=1308 f(15)=2605 f(23)=664299

12
シャミールの秘密の共有
与えられたn(プレイヤーの数)、 t(しきい値)、およびs(秘密)、出力nによって生成された秘密シャミール秘密分散アルゴリズム。 アルゴリズム このチャレンジの目的のために、計算はGF(251)(sizeの有限体251、または整数mod 251として知られる)で行われます。通常、フィールドは、サイズがより大きい素数になるように選択されnます。課題を簡素化するために、フィールドサイズは一定になります。251これは、8ビットの符号なし整数で表現できる最大の素数であるため選択されました。 t-1(包括的)範囲でランダムな整数を生成します[0, 250]。これらのラベル1を通過T-1 。 構築t-1用い番目の多項式をsのパワーの係数として工程1からの一定値とランダムな整数としてx:F(X)= S + X * 1 + X 2 * 2 + ... + X T- 1 * a t-1。 (包括的)範囲内の(f(z) mod 251)それぞれの出力。z[1, n] 参照実装 #!/usr/bin/env python from __future__ import print_function import random import sys # Shamir's Secret Sharing algorithm # Input …
17 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 

19
素因数の二乗和が減算される範囲の最大数
式 たとえば、数300 300の素因数は[2, 3, 5](300の素数で素数である一意の数) これらの各数値を二乗すると、 [4, 9, 25] そのリストを合計すると、 4 + 9 + 25 = 38 最後に元の数からその合計(38)を引きます300-38 = 262(これが結果です) 入力 入力は2より大きい正の整数になります。2から入力値(両端を含む)までのすべての数値をチェックし、上記の式で最大の結果をもたらす数値を見つける必要があります。 出力 出力は、スペース、コンマ、改行、または言語で許可されているもので区切られた2つの数字になります(2つの数字を区別するには、区切りが必要です)。これらは、ファイル、stdout、または言語で使用されるものに出力できます。目標は、上記の式を実行したときに最大出力を生成する範囲内の数値を見つけることです。表示される最初の番号は開始番号(300など)で、2番目の番号は式が生成した出力(262など)である必要があります テストケース Input: 3 Output: 2, -2 Input: 10 Output: 8, 4 Input: 50 Output: 48, 35 Input: 1000 Output: 1000, 971 Input: 9999 Output: 9984, 9802 …

11
ABACABA都市を作成する
これが3番目のABACABA市です。 _ A|_| B|__| A|_|_ C|___| A|_| B|__| A|_| ABACABAシーケンスから作成され、基本的には次のとおりです。 A(1回目の反復) 場所B-AB A-ABAを繰り返します(2回目の反復) 場所C-ABAC ABAの繰り返し-ABACABA(3回目の反復) そしてあなたはアイデアを得る。 建物の高さ(下線の数で対応)は、A = 1、B = 2などの数字に変換された文字と同じです。 入力 繰り返し数1 <= n <= 26。 出力 行の先頭の文字を含む、順序nのABACABA市。

5
チョコレートの数字
与えられたmことにより、nチョコレートバー、m,n正、出力にバーを破るには、いくつかの方法mn、各ブレークがグリッド線に発生した1枚で1。 順序が重要です。ピースも区別できるため、1 x 3のチョコレートバーの両端の2つのピースは同等ではありません。 たとえば、2 x 2ブロックの場合: _ _ _ _ _ _ _ _ |_‖_| -> |‗| |_| -> |_| |‗| -> |_| |_| |_‖_| |_| |_| _ |_| _ _ |_| |_| |_| _ _ _ _ _ _ _ _ |_‖_| -> |_| |‗| -> |‗| |_| …

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