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

乱数や出力を含むタスク。

24
任意のランダム性
ランダムネスは楽しいです。意味のない挑戦は楽しいです。 整数入力が与えられると、すべての整数の合計がに等しくなるように(両端を含む)の完全にランダムな整数のセット(順序なし、一意)をn出力する関数を記述します。n1n^2n^2 有効な各セットに発生する可能性がゼロ以外であれば、ランダム性は均一である必要はありません。 バイト単位の最短回答(各言語ごと)が勝ちです。 例 Input (n) = 1, Target (n^2) = 1 Sample of possible outputs: 1 Input = 2, Target = 4 Sample of possible outputs: 3, 1 1, 3 Input = 3, Target = 9 Sample of possible outputs: 6, 1, 2 3, 5, 1 4, 3, …

25
ピジョンホールの原理とコードゴルフ
鳩の巣原理と述べています N > Mの場合、N個のアイテムをM個のボックスに入れる場合、少なくとも1つのボックスに複数のアイテムを含める必要があります。 多くの人にとって、この原則は他の数学的発表と比較して特別な地位にあります。EWダイクストラが書いたように、 それはいくつかの神秘に囲まれています。それを使用する証明は、しばしば特別なもの、特に独創的なものと見なされます。 チャレンジ この課題の目的は、ASCIIアート表現を使用して鳩の巣の原理を説明することです。具体的には: 入力N(アイテムの数)およびM(ボックスの数)として、N非負とM正を取ります。Nより小さい場合がありますM(その場合、原則が適用されない場合でも)。 ボックスへのアイテムの可能な割り当ての1つをランダムに選択します。各割り当てには、選択される確率がゼロ以外である必要があります。 次のように、割り当てのASCIIアート表現を作成します。 M行があり、それぞれがボックスに対応しています。 各行は、などの非空白文字で始まり|ます。 その文字に続いて、などの別の非空白文字が続き#、そのボックス内のアイテムの数だけ繰り返されます。 たとえばN = 8、考慮してくださいM = 5。ボックスへのアイテムの選択assigmentである場合に4、1、0、3、0、表現であります |#### |# | |### | 同じプログラムの異なる実行(異なる割り当てをもたらす)は、 |# |## |# |# |### 表現に関してある程度の柔軟性があります。下記参照。 特定のルール コードはおよびの値に対して理論的に実行する必要がNありMます。実際には、メモリサイズまたはデータ型の制限によって制限される場合があります。 出力を観察するだけでは、すべての割り当てにゼロ以外の確率があるかどうかを判断するのに十分ではないため、各サブミッションでは、コードがどのようにそれを達成するかを説明する必要があります。 次の表現バリエーションが許可されます。 異なる非空白文字の任意のペアを選択できます。これらは、プログラムの実行全体で一貫している必要があります。 リプレゼンテーションの90度回転は許容されます。繰り返しますが、選択は一貫している必要があります。 末尾または先頭の空白は許可されます。 異なる表現形式と、のための一例としてN = 15、M = 6プログラムの2つの実行の結果は、可能性が VVVVVV @@@@@@ @@ @@@ @ @@ @ …

30
一定の乱数のソースを使用して、0〜nの間の乱数を選択します
仕事 正の整数で考えるとn以下の2^30コードは、あなたが選択した任意の方法で入力として必要があり、指定された出力ランダムの間の整数0とn、包括的に。生成する数値は、ランダムに均一に選択する必要があります。つまり、0toの各値はn等しい確率で発生する必要があります(「規則と警告」を参照)。 ルールと警告 あなたのコードは、あなたの言語または標準ライブラリに組み込まれた、一様にランダムであると主張する任意の乱数ジェネレータが実際に一様であると仮定できます。つまり、使用しているランダムソースの品質を心配する必要はありません。しかしながら、 使用しているランダムソースが均一である場合、コードはから0まで均一なランダム整数を正しく出力することを確立する必要がありますn。 組み込みまたはライブラリのランダム関数を呼び出すときの引数は定数でなければなりません。つまり、入力値から完全に独立している必要があります。 コードは、終了が保証されているのではなく、確率1で終了する場合があります。 ノート randInt(0,n) 組み込み関数またはライブラリ関数への引数として入力を受け取るため、無効です。 rand()%nうではない一般的には一様乱数を与えます。betsegによって与えられた例として、場合intmax == 15やn = 10、あなたが取得する多くの可能性が高くなります0-5より6-10。 floor(randomfloat()*(n+1)) また、0と1の間の異なる浮動小数点値の有限数により、一般に均一な乱数を与えません。

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

3
自分でビールを飲む
それは金曜日だ!つまり、ビールの時間です! 残念ながら、今日はビールを飲む代わりにゴルフをします。:( チャレンジ ビールを出して飲む。一口飲む量によって出力が変わります。 一口 プログラムは1つの入力文字列を受け取る必要があります。この文字列は、連結されたsips のみで構成できます。 入力が空の文字列である場合、泡を含む完全なビールグラスを出力する必要があります。 一口飲むほど、ビールグラスは空っぽになります。 一口飲むと、ビールにはまだ泡が残っています。このフォームの出力は常に同じです(例を参照)。 1口飲む場合は、ビールグラスを出力し、その後に改行と文字列を出力する必要がありますYuck, foam.。 1杯以上飲むと、ビアグラスに泡が含まれなくなり、グラスの上部が見えるようになります。泡を飲むことは一口としてカウントされます。 6杯以上飲む場合は、空のビールグラスを出力し、その後に改行と文字列を続けますBurp。 飲むたびに、ビールのグラスが空になります。ビールグラスの充満度は、ビールの泡の量°(°)によって異なります。あなたが泡の後に取る一口ごとに、泡のラインを削除する必要があります。ビールの各ラインには、最小1と最大の5バブルを含めることができます。これらのバブルの位置は100%ランダムでなければなりません。 例 入力 empty input string, or no input at all 出力 oo o oo oooooooooooo o| ° ° |\ | ° | \ | °° ° |} | | ° ° | / | ° …

7
Brainf *** NOPの生成
Brainfuckコードを書くとき、デバッグを促進するために必要以上に長くする必要があると感じることがあります。><そこにa を入れるだけでそれを行うことができますが、それは何が楽しいですか?コードを読んでいる人を混乱させるために、NOPeyをもっと長くする必要があります。 Brainfuckの簡単な紹介 Brainfuckは、1993年にUrbanMüllerによって作成された難解なプログラミング言語であり、極端なミニマリズムが特徴です。(ウィキペディア) Brainfuckは、8つのコマンドに基づく言語です+-><,.[]。コードはチューリングマシンのようなもので実行されます。値を変更できる無限のテープです。この課題では、最初の4つに焦点を当てます。 + increment the value at the pointer - decrement the value at the pointer > move the pointer right < move the pointer left Brainfuck NOP Brainfuck NOPは、任意の状態から実行されたときに状態に変化をもたらさない一連のBrainfuckキャラクターです。これらは上記の4文字で構成されています。 チャレンジ 課題は、実行されたときに、指定された長さのランダムなBrainfuck NOPを生成するプログラムまたは関数を作成することです。 入力 入力として非負の偶数整数を受け取りますn。(NOPは奇数には不可能ですn。) 出力 あなたは長さのランダムなBrainfuck NOPを出力しますn。 ルール NOPの定義:プログラムの出力がBrainfuckプログラムの任意のポイントに挿入された場合、そのプログラムの動作は決して変化してはなりません。つまり、インタープリターの状態を変更してはなりません。 たとえば+>-<、2つのセルの値を元に戻すことなく変更するため、これは正しくないことに注意してください。投稿する前にこれらのソリューションをテストしてください。 また、これ+>-<->+<はNOPであり、を削除するだけでは何にも削減できないことに注意してください>< <> +- -+。したがって、これらを相互に挿入するだけのアルゴリズムは使用できません。 長さのすべての有効なNOPにはn、出力に表示されるゼロ以外のチャンスが必要です。ただし、分布は均一である必要はありません。 問題のブレインファックインタープリターには、任意精度セルの二重無限テープがあります。つまり、両方向に無限に移動し、各セルを無制限にインクリメント/デクリメントできます。 …

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
Piのモンテカルロ推定量
みんなハッピーパイデー!理由もなく、可能な限り短いPiのモンテカルロ推定量を構築しようとしています。ツイートに収まるものを構築できますか? 明確にするために、私が念頭に置いているのは、単位正方形からランダムな点を描き、単位円内に入る比率を計算する典型的なアプローチです。サンプルの数は、ハードコーディングすることも、しないこともできます。それらをハードコーディングする場合、少なくとも1000サンプルを使用する必要があります。結果は、浮動小数点、固定小数点、または有理数として返されるか出力される場合があります。 トリガー関数やPi定数は、モンテカルロアプローチではありません。 これはコードゴルフであるため、最短の提出(バイト単位)が優先されます。

30
サイコロの結果をASCIIで描く
ASCIIで立方体型のダイスを使ってサイコロを投げた場合のランダムな結果を表示します。 $ dice の結果になるはずです ----- | | | o | | | ----- ----- |o | | | | o| ----- ----- |o | | o | | o| ----- ----- |o o| | | |o o| ----- ----- |o o| | o | |o o| ----- ----- |o o| …

27
月に何日?
月のテキスト表現(大文字と小文字を区別しないフルネームまたは3文字の略語)を指定すると、その月の日数を返します。 たとえば、december、DEC、およびdecすべての31を返す必要があります。 2月には28日または29日があります。 入力が正しい形式の1つの月であると想定します。

24
音楽のビートを説明する
あなたは知っている-彼らはこのように見える: ソース 目標は、次のような音楽ビートのイラストを描くことです。 = = = = = = = = == = == = == = ==== == ==== == === = = ======= ======== == ==== = ========= = ================================= ルールは次のとおりです。 図の幅は33シンボルですが、必要に応じて、この幅を超える後続スペースは許可されます。 各列は等号(=)で構成されています。 各列にはランダムな高さがあり(次の列の高さは前の列の高さに決して依存してはいけません)、1から6まで変化します。厳密ではない入力が少なくとも可能であれば問題ありません数学の確率(つまり、一部の入力は他の入力よりもまれにしか表示されない可能性があります)。 カラムは底部の上に浮いてはならず、隙間はありません。 すべての列の最小の高さは1であるため、最後の行にも隙間はありません。常に33の等号で構成されます。 高さ6の列を持たない可能性があるため(結局すべてランダムです):この場合、スペースでできた一番上の行を持つ必要はありません。この性質のあらゆるエッジケースに適用されます。コードが突然1を超える高さの列を提供しなかった場合、一番下の行の上にスペースで作られた追加の行を持つ必要はありません。 あなたは何も入力しません。

15
ランダムウォーカープリンター
歩行者の位置にSTDOUT nドットを含む文字列を1回ずつ(1ステップずつ)書き込むプログラムまたは関数を描画します.。また、プログラムは1 s秒ごとに行を書き込む必要があります(またはs各行の後に数秒待機します)。 ランダムウォークは、一連のランダムステップ(wiki)で構成されるパスの数学的な形式化であり、すべての新しいステップが最後のステップと新しい値になるため、tステップ値はすべてのランダム値の合計になりますir +初期値の前。 プログラムは2つの入力を取る必要があり、出力ではスペース" "とドットのみを使用"."します。ウォーカーの開始値は、20出力が19スペースの後にドットになるようになります。 . #19 spaces then a dot 新しいステップごとに、値は歩行者の最後の値にこれらの1つを加えたものになります[-2-1,0,1,2](それぞれ20%の確率)。新しい位置が印刷された後、プログラムはs数秒待ってから次のステップに進みます。ステップが歩行者を範囲外に連れて行く場合、1 to 40それは無視されるべきであり、歩行者の位置は同じままである。スペースの数は常に0〜39の数になります。 例 #input Mywalk(s = 0.1, n = 30) #output . . . . . . . . . . . . . . . . . . . . . . . . . …
24 code-golf  random 

23
ボウルにアルファベットのスープを入れます
私たちは、ように見える決して取得しない疲れたアルファベット関連の課題の... レシピ 与えられた 文字列S、および 2つの正の整数M、N、 文字とアルファベットスープ製造S占有ランダムな位置に長方形のボウルサイズのM× N、フレームボウルのリムを表現するために、非アルファベット、非空白文字です。 文字で使用されていない位置はスペースとして表示する必要があります。以下の例を参照してください。 追加規則 サイズM× Nは、ボウルの内部を指します。リムを含むサイズはM+2× N+2です。 からの各キャラクターは、ボウルの異なる位置に一度S表示されます。つまり、ある文字が別の文字を上書きすることはできません。 S 重複する可能性があります。たとえばS、が文字列の'abcc'場合、スープにはone a、one b、およびtwo c(すべて異なる位置にある)が含まれている必要があります。 入力は満足さ制限を M >= 1、N >= 1、1 <= length(S) <= M*N。 ボウルの縁は、アルファベット以外、スペース以外の任意の文字で、プログラムの実行と入力値全体で一貫しています。 ボウル内の文字の位置はランダムであるため、同じ入力でプログラムを実行するたびに結果が異なる場合があります。 入力が与えられると、文字位置のすべての可能なセットはゼロ以外の確率を持つ必要があります。これはプログラムのいくつかの実現からはチェックできないため、コードがこれをどのように実現するかを説明してください。 先頭または末尾の空白リムの周りには許可されています。 S大文字のみが含まれます。希望する場合は、小文字のみを選択できます。 入出力は通常どおり柔軟です。たとえば、出力は、改行を含む文字列、2D文字配列、または行のリストです。 すべてのプログラミング言語でプログラムまたは機能を使用できます。標準的な抜け穴は禁止されています。 バイト単位の最短コードが優先されます。 例 入力はとして表示されます。S, [M N]ここでMは、行N数と列数です。キャラクター#はリムに使用されます。 'O', [1 1]: ### #O# ### 'HEY', [1 3]: ##### …

14
あなたの「KVZ」を知っていますか?
概念 英語のアルファベットをどのようにスクランブルして、曲を壊さずにトゥインクルトゥインクルリトルスターに合わせて歌うことができますか? ルール スワッピング 次の各セットに含まれる文字は、曲を損なわずにデフォルトで自由に交換できると仮定してみましょう。 {A、J、K} {B、C、D、E、G、P、T、V、Z} {I、Y} {Q、U} {S、X、F} {M、N} したがって、H、L、O、R、およびWは所定の位置にロックされます 出力 プログラムは、順序が上記の条件を満たしている限り、任意の順序で完全な英語のアルファベットを含む単一のランダム文字列(または文字のリスト)を出力する必要があります。プログラムがどの文字列を出力するかを予測する方法はないはずです(シードを無視する場合)。つまり、ハードコーディングすることはできません。 あなたのプログラムは、9 !⋅ 3 !⋅ 3 !⋅ 2 !⋅ 2 !⋅ 2 != 1045094409!⋅3!⋅3!⋅2!⋅2!⋅2!=104509440 9! \cdot 3! \cdot 3! \cdot 2! \cdot 2! \cdot 2! = 104509440 それぞれを生成するいくつかの正の確率(必ずしも均一ではない)を持っている必要があります!⋅ 3 !⋅ 3 !⋅ 2 !⋅ 2 !⋅ 2 …

10
最短の一意に識別する部分文字列
文字列のリストが与えられたら、各文字列を、空でない部分文字列の1つで置き換えます。これは、リスト内の他の文字列の部分文字列ではなく、できるだけ短くします。 例 リストを考えると["hello","hallo","hola"]、"hello"ただで置き換える必要があり"e"、この部分文字列がに含まれていないとして、"hallo"そして"hola"、それはできるだけ短くしています。"hallo"いずれかで置き換えることができる"ha"か、"al"と"hola"のいずれかによって"ho"、"ol"または"la"。 ルール 文字列は空ではなく、同じ大文字と小文字のアルファベットのみを含むと想定できます。 このような部分文字列はリスト内の各文字列に存在すると仮定できます。つまり、リスト内の文字列は他の文字列の部分文字列にはなりません。 入力と出力は任意の合理的な形式にすることができます。 これはcode-golfなので、選択した言語でできるだけ少ないバイトを使用するようにしてください。 テストケース ほとんどの場合、可能な出力は1つだけです。 ["ppcg"] -> ["p"] (or ["c"] or ["g"]) ["hello","hallo","hola"] -> ["e","ha","ho"] ["abc","bca","bac"] -> ["ab","ca","ba"] ["abc","abd","dbc"] -> ["abc","bd","db"] ["lorem","ipsum","dolor","sit","amet"] -> ["re","p","d","si","a"] ["abc","acb","bac","bca","cab","cba"] -> ["abc","acb","bac","bca","cab","cba"] 関連:最短識別サブストリング -同様のアイデアですが、より複雑なルールと扱いにくい形式です。
23 code-golf  string  code-golf  string  code-golf  array-manipulation  code-golf  quine  code-golf  array-manipulation  integer  matrix  classification  code-golf  quine  code-golf  string  matrix  conversion  code-golf  string  number  code-golf  string  code-golf  number  sequence  integer  code-golf  decision-problem  matrix  code-golf  string  code-golf  math  code-golf  math  array-manipulation  combinatorics  code-golf  random  code-golf  code-golf  alphabet  code-golf  python  c  code-golf  base-conversion  code-golf  string  counting  code-challenge  code-generation  fastest-code  code-golf  kolmogorov-complexity  matrix  code-golf  string  code-golf  array-manipulation  decision-problem  random  sudoku  code-golf  chess  code-golf  card-games  encode  code-golf  decision-problem  code-golf  code-golf  math  array-manipulation  matrix 

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