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

3
クライントポロリグロット
Kleinは私が設計した2D言語で、12の異なるトポロジサーフェスに埋め込むことができます。Kleinプログラムは、コマンドライン引数を変更することにより、異なるサーフェスで実行できます。 トポロジは、プログラムの端から出たときに命令ポインタがどこに移動するかを決定します。エッジから移動すると、IPは一致する色のエッジにジャンプし、矢印に対する位置を維持します。つまり、ポインターは矢印の頭からの距離を保持します。 たとえば000、ほとんどの2D言語で使用されるトポロジであるトポロジでは、エッジから外れると、命令ポインタが反対側に回り込みます。 仕事 タスクは非常に簡単で、実行時に実行されるトポロジを出力するKleinプログラムを記述します。個々の数字はスペースで区切ることができます。(たとえば000、0 0 0両方とも許容される出力です)。-Aコマンドラインフラグを使用するか無視するかを選択できます。コマンドラインフラグを使用しても、バイト数はかかりません。 これはコードゴルフなので、最短の答えが勝者になります。 これは、すべてのトポロジを一度にテストするために使用できるオンラインテストドライバーです。整数モードで実行するには、を削除し-Aます。

8
ASCIIトポロジpt 1:頼りにできますか?
深刻な問題があります。非常に重要な番号を保持するテキストファイルがいくつかあります。すべての重要な番号です。そして、2、3。 これらの数字はとても重要だったので、私はそれらをそれらの新しい10進数または2進数に委ねることができませんでした。次のように、各数値を単項でエンコードしたままにしました。 +--+ | | +---+ +----+ | | | | | +---+ +-------+ ~/two.txt シンプルで信頼性の高い番号:2の2つのASCIIループ 以下に、私が手作業で作成した例をいくつか示します。 1: +---+ | | +--+ | | | +--+ | | | | | | | +--+ +--+ | | +---------+ 三: +---------+ | +-----+ | | | +-+ | | | | …

8
トポロジを確認する
チャレンジ T有限集合のサブセットの集合が与えられたS={1,2,3,...,n}場合T、トポロジーかどうかを判断します。 説明 Powersetの P(S)一部のセットのはS、すべての部分集合の集合ですS。いくつかの例: S = {}, P(S) = {{}} S = {1}, P(S) = {{}, {1}} S = {1,2}, P(S) = {{}, {1}, {2}, {1,2}} S = {1,2,3}, P(S) = {{}, {1}, {2}, {3}, {1,2}, {1,3}, {2,3}, {1,2,3}} トポロジー Tセット上でSのサブセットでありP(S)、以下の特性を有します: {}あり、TありSますT もしAとBしているTそのように彼らの交点がありますA ∩ B もしAとBしているTそのように労働組合がありますA ∪ B* *この定義は完全に正しいものではありませんが、有限集合の場合に当てはまります。これはこの課題の目的には十分です。実際の公理は無限の結合も可能にしますが、それは有限の場合には無関係です。 …

1
整数を分離する
前書き トポロジーとして知られる数学の分野では、分離公理と呼ばれるものがあります。直感的に、のセットXとサブセットのコレクションがありX、これらをプロパティと考えることができます。Xプロパティに基づいてすべてのアイテムを区別できる場合、システムは十分に分離されています。分離公理はこの考えを形式化します。この課題でのタスクは、指定された3つの分離公理Xとプロパティのリストを確認することです。 入力 入力は整数n ≥ 2であり、整数のリストのリストTです。の整数はTから描画されX = [0, 1, ..., n-1]ます。のリストはT空でソートされていない場合がありますが、重複は含まれません。 出力 出力は4つの文字列の1つであり、3つの分離公理によって決定され、それぞれが最後のものよりも強力です。他の公理もありますが、簡単にするためにこれらを使用します。 すべてのdistinct xおよびyinについてX、Tそのうちの1つだけを含むリストが存在するとします。次にX、公理T0をT満たします。 すべての明確なためと仮定xし、yでX、そこに二つのリストが存在してT含まれているの一つ、xではなくy、その他に含まれていyますがありませんx。次にX、公理T1をT満たします。 上記の2つのリストにも共通の要素が含まれていないとします。次にX、公理T2をT満たします。 あなたの出力は次のいずれかであるT2、T1、T0またはTS、(保持している上記の条件のどれに応じて、TSそれらの手段のどれも行いません)。T2はT1よりも強く、T1はT0よりも強いことに注意してください。常に可能な限り強い公理を出力する必要があります。 ルールとスコアリング 完全なプログラムまたは関数を作成できます。最小のバイトカウントが優先され、標準の抜け穴は許可されません。 テストケース 2 [] -> TS 2 [[],[1]] -> T0 2 [[0],[1]] -> T2 3 [[0],[0,1,2],[1,2]] -> TS 3 [[],[0],[0,1],[2]] -> T0 3 [[0],[0,1],[2,1],[0,1,2]] -> T0 3 [[0],[0,1],[2,1],[2,0]] -> T1 6 …

8
トーラス上のサイクル
チャレンジ この課題は、次の2つの整数を取り込んでプログラム書く必要がありますnし、mそして上の番号非交差ループを出力nすることによってmで起動することによって作られたトーラス(0,0)とステップのみを取って右へを。トーラスは、上部と下部、側面の両方にラップアラウンドしたグリッドと考えることができます。 これはコードゴルフなので、バイト数が最も少なくなります。 例 たとえば、入力がの場合n=m=5、1つの有効なウォークは (0,0) -> (0,1) -> (0,2) -> (1,2) -> (2,2) -> (2,3) -> (2,4) -> (2,0) -> (3,0) -> (4,0) -> (4,1) -> (4,2) -> (4,3) -> (0,3) -> (1,3) -> (1,4) -> (1,0) -> (1,1) -> (2,1) -> (3,1) -> (3,2) -> (3,3) -> (3,4) …

11
スティーンロッド代数の基底要素を生成する
スティーンロッド代数は、代数トポロジーで現れる重要な代数です。スティーンロッド代数は、「スティーンロッド平方」と呼ばれる演算子によって生成されます。正整数iごとに1つ存在します。二乗演算の「許容可能な単項式」から成るスティーンロッド代数の基礎があります。この基盤を生成することが私たちの目標です。 各整数が次の整数の少なくとも2倍である場合、正の整数のシーケンスは許容可能と呼ばれます。したがって、たとえばおよび[7,2,1]ため、許容されます。一方、ため、許容できません。(トポロジーでは、シーケンスに対してを記述します)。7≥2∗27≥2∗27 \geq 2*22≥2∗12≥2∗12 \geq 2*1[3,2]3&lt;2∗23&lt;2∗23 < 2*2Sq7Sq2Sq1Sq7Sq2Sq1\mathrm{Sq}^7 \mathrm{Sq}^2\mathrm{Sq}^1[7,2,1] シーケンスの次数は、エントリの合計です。したがって、たとえば、次数[7,2,1]は7+2+1=107+2+1=107 + 2 + 1 = 10です。過剰許容シーケンスの最初の要素マイナス残りの元素の合計であるので、[7,2,1]過剰有する7−2−1=47−2−1=47 - 2 - 1 = 4。 仕事 正の整数のペアを取り、(d,e)次数dと超過の許容可能なすべてのシーケンスのセットを出力するプログラムを作成しeます。出力はセットなので、許容されるシーケンスの順序は関係ありません。 例: Input: 3,1 Output: [[2,1]] ここでは、合計3の許容シーケンスを探しています。2つのオプションが[3]あり[2,1]ます。([1,1,1]および[1,2]合計は3ですが、許容されません)。の過剰[3]は3で、過剰[2,1]は2−1=12−1=12-1 = 1です。従って、過剰の配列のみ≤1≤1\leq1[2,1]。 Input: 6, 6 Output: [[6], [5, 1], [4, 2]] (or any reordering, e.g., [[5,1],[4,2],[6]]) 過剰は常に次数以下であるため、過剰条件はありません。このように、私達はちょうどのオプションがある度6のすべての許容シーケンスを見つけるためにしようとしている[6]、[5, 1]と[4, 2]。(これらは、過剰有する666、5 − …

14
多面体のオイラーポアンカレ特性
所定の三角測量多面体の表面のp、そのオイラー・ポアンカレ特性計算χ(p) = V-E+F、V頂点の数、あるEエッジの数とF顔の数。 詳細 頂点はとして列挙され1,2,...,Vます。三角形分割はリストとして指定されます。各エントリは、時計回りまたは反時計回りの順序で指定された1つの面の頂点のリストです。 名前にもかかわらず、三角形分割には3面以上の面を含めることもできます。面は単純に接続されていると想定できます。つまり、各面の境界は、1つの閉じた非自己交差ループを使用して描画できます。 例 テトラヘドロン:この四面体が凸であるとありχ = 2。可能な三角形分割は [[1,2,3], [1,3,4], [1,2,4], [2,3,4]] 立方体:この立方体は凸面で、を持っていχ = 2ます。可能な三角形分割は [[1,2,3,4], [1,4,8,5], [1,2,6,5], [2,3,7,6], [4,3,7,8], [5,6,7,8]] ドーナツ:このドーナツ/トロイド形状にはがありχ = 0ます。可能な三角形分割は [[1,2,5,4], [2,5,6,3], [1,3,6,4], [1,2,7,9], [2,3,8,7], [1,9,8,3], [4,9,8,6], [4,5,7,9], [5,7,8,6]] ダブルドーナツ:このダブルドーナツにはが必要χ = -2です。これは、上のドーナツの2つのコピーを使用して構築され[1,2,5,4]、最初のドーナツの側面[1,3,6,4]と2番目のドーナツの側面を識別します。 [[2,5,6,3], [1,3,6,4], [1,2,7,9], [2,3,8,7], [1,9,8,3], [4,9,8,6], [4,5,7,9], [5,7,8,6], [1,10,11,4], [10,11,5,2], [1,10,12,14], [10,2,13,12], …

3
スタックベースの言語をトークン化する
私は、に取り組んできた別のと呼ばれるスタックベースのゴルフの言語Stackgoat。この課題では、Stackgoat(または実際には一般的なスタックベースの言語)のTokenizerを作成します。 例 "PPCG"23+ ["PPCG", '23', '+'] 'a "bc" + ['"a"', '"bc"', '+'] 12 34+-"abc\"de'fg\\" ['12', '34', '+', '-', '"abc\"de'fg\\"'] "foo ['"foo"'] (empty input) [] ' "" ['" "', '""'] 仕様 処理する必要がある3つのタイプは次のとおりです。 ストリングス、何も内"" 数字、数字列 演算子、空白以外の任意の単一文字 空白は、文字列内にあるか、2つの数値を区切っていない限り、本質的に無視されます。 文字列/文字仕様: 文字列はで区切られ、が検出された"場合\、次の文字をエスケープする必要があります。 '文字はa で始まり、その後の'文字は文字列リテラルに変換されます。'a-&gt;"a" ' 常にその後に文字があります 終値を自動挿入する必要があります ルール: の形式evalは許可されません 入出力: 入力は、STDIN、関数パラメーター、または同等の言語を通じて取得できます。 出力は、配列または言語に最も近いものでなければなりません。
15 code-golf  parsing  code-golf  hexagonal-grid  code-golf  string  code-golf  string  code-golf  combinatorics  code-golf  ascii-art  code-golf  string  game  counting  code-golf  arithmetic  complex-numbers  code-golf  string  code-golf  decision-problem  hexagonal-grid  code-golf  string  sequence  code-golf  number  arithmetic  code-golf  ascii-art  code-golf  ascii-art  code-golf  string  arithmetic  code-golf  number  simulation  code-golf  number  arithmetic  code-golf  string  sequence  unicode  code-golf  string  ascii-art  balanced-string  code-golf  number  clock  code-golf  ascii-art  number  code-golf  math  number  sequence  code-golf  string  ascii-art  balanced-string  code-golf  math  string  popularity-contest  graphical-output  image-processing  code-golf  string  permutations  code-golf  string  code-golf  random  code-golf  string  cryptography  palindrome  code-golf  chess  code-golf  math  array-manipulation  topology  code-golf  math  sequence  code-golf  keyboard  classification  code-golf  string  sequence  code-golf  natural-language  code-golf  math  number  sequence  sorting  code-golf  sequence  combinatorics  grid  tic-tac-toe  code-golf  geometry  code-golf  number  restricted-source  new-years  expression-building 

2
あのポリゴンは誰ですか?
トポロジカルサーフェスを表す便利で便利な方法は、基本ポリゴンを使用することです。多角形の各辺は別の辺と一致し、平行または反平行のいずれかになります。たとえば、これはトーラスの基本的なポリゴンです。 これがトーラスである理由を理解するために、ポリゴンが紙であると想像できます。適切な表面を作成するために、対応するエッジが矢印が同じ方向に並ぶように紙を曲げます。トーラスの例では、紙を円柱に丸めて、2つの青いエッジ(ラベルb)を接続することから始めます。次に、チューブを取り出して曲げて、2つの赤いエッジ(a)が互いに接続するようにします。トーラスとも呼ばれるドーナツ型にする必要があります。 これには少し注意が必要です。エッジの1つが反対方向に向いている次のポリゴンで同じことをしようとすると: トラブルに巻き込まれる可能性があります。これは、このポリゴンが3次元に埋め込むことができないクラインボトルを表しているためです。このポリゴンをクラインボトルに折り畳む方法を示すウィキペディアの図を次に示します。 ご想像のとおり、ここでのタスクは、基本的なポリゴンを取得し、どのサーフェスであるかを判断することです。4面ポリゴン(処理する必要がある唯一のサーフェス)には、4つの異なるサーフェスがあります。 彼らです トーラス クラインボトル 球 射影平面 これは画像処理ではないので、入力として画像を受け取るとは思わないが、代わりに便利な表記法を使用して基本ポリゴンを表現します。上記の2つの例で、同じ文字(aまたはb)で対応するエッジに名前を付け、ねじれたエッジにねじれを示す追加のマークを付けたことに気付いたかもしれません。時計回りに進んで、上端から開始して各端のラベルを書き留めると、各基本ポリゴンを表す表記を取得できます。 たとえば、提供されたトーラスはababになり、クラインボトルはab - abになります。私たちの挑戦では、ねじれたエッジをネガでマークする代わりに、文字を大文字にします。 仕事 文字列が与えられると、それが基本ポリゴンを表すかどうかを判断し、その適切な表面に対応する値を出力します。サーフェスに正確な名前を付ける必要はありません。それぞれが4つのサーフェスの1つを表す4つの異なる出力値を必要とし、5番目の値が不適切な入力を表します。すべての基本的なケースは「簡単なテスト」セクションで説明されており、すべての車は、1つまたは無効な車と同形です。 ルール 側面には常にaおよびbのラベルが付けられるわけではありませんが、常に文字でラベルが付けられます。 有効な入力は、4つの文字で構成され、2つのタイプと2つのタイプがあります。有効な入力を得るには、常に正しいサーフェスを出力する必要があります。 無効な入力は拒否する必要があります(サーフェスを表す4つの値のいずれも出力しません)。4つのサーフェスと区別できる限り、入力を拒否するときに何でもできます。 これはコードゴルフなので、目標はソースコードのバイト数を最小限にすることです。 テスト 簡単なテスト abab Torus abAb Klein Bottle abaB Klein Bottle abAB Projective Plane aabb Klein Bottle aAbb Projective Plane aabB Projective Plane aAbB Sphere abba Klein Bottle abBa Projective …

2
これらの三つ編みは等しいですか?
組紐理論に慣れていない場合は、まずこれを読むことをお勧めします。この質問は、少なくとも手元の概念に精通していること、およびグループ理論に精通していることを前提としています。 私たちは定義できσ nはここで編組あるとN番目のオーバートップ交雑からストランド(インデックス付きつ)+ 1からn番目の鎖、及びσ N -の逆であるとσ Nすなわち(N + 1番目ストランドはn番目のストランドと交差します)。 編組グループB N次いでによって生成された&lt;σ 1、σ 2、σ 3、。。。、σn -1 &gt;。したがって、B nのすべてのブレードは、σ ブレードの積として書くことができます。1 グループの2つのブレードが等しいかどうかを判断するのは簡単な作業ではありません。そのかなり明白であってもよいσ 1 σ 3 =σ 3 σ 1は、それが少し明らかである例えばσ 2 σ 1 σ 2 =σ 1 σ 2 σ 1。2 したがって、質問は「2つのブレードが同じであるかどうかをどのように判断できますか?」です。さて、上記の2つの例はそれぞれこれを少し表しています。一般に、Artinの関係と呼ばれる以下の関係は真です。 σ I σ J =σ jを σ I ; i-j&gt; 1 σ …

1
n交差のプライムノットの数
プライム結び目は次のとおりです。 2つの非自明なノットのノット和として記述できない非自明なノット。 説明結び目和:隣接する2ノットを入れて、 ...次に、それらの間に2本の線を引き、両側を同じストランドにし、先ほど描いた線の間の部分を削除します。この2つのノットの構成により、新しい非プライムノットが形成されます。 以下は、交差が7以下のすべてのプライムノットです(Unknotはプライムではありません)。 与えられた交差数に対して、一意のプライムノットの数を出力する必要があります。 1 0 2 0 3 1 4 1 5 2 6 3 7 7 8 21 9 49 10 165 11 552 12 2176 13 9988 14 46972 15 253293 16 1388705 私は値がより大きい入力で既知であるとは思いません16が、そのような入力が与えられた場合、コードは十分な時間を与えられた正しい結果を見つける必要があります。 OEIS-A002863
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.