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

機能を要求する、または何らかの方法で機能を含む課題。(メソッドまたはサブルーチンとも呼ばれます。)

24
古いマクドナルド関数
選択した言語で次を出力する関数を作成します。 Old MacDonald had a farm, E-I-E-I-O, And on that farm he had a cow, E-I-E-I-O, With a moo moo here and a moo moo there, Here a moo, there a moo, everywhere a moo moo, Old MacDonald had a farm, E-I-E-I-O! ここで、cow及びmoo関数のパラメータの文字列であり、そのように変更することができpig及びoink又はsheep及びbaa、例えば。 大文字、ハイフン、句読点、スペース、改行を考慮する必要があります。 コードに最小限のUnicode文字を入力することを目指します。

30
関数を書く[終了]
閉じた。この質問には詳細または明確さが必要です。現在、回答を受け付けていません。 この質問を改善したいですか?詳細を追加し、この投稿を編集して問題を明確にします。 5ヶ月前に閉店。 私はこの挑戦がまだ存在しないとは信じられない。 チャレンジ 関数を書きます。 詳細 プログラムは、なんらかの呼び出し可能な関数を定義する必要があります。これには、関数、ラムダ関数、またはサブルーチンとして一般に知られているものが含まれます。これらのタイプの呼び出し可能オブジェクトはすべて、この投稿では「関数」と呼ばれます。 関数への入力はオプションであり、必須ではありません。 関数からの戻り値もオプションであり、必須ではありませんが、制御は呼び出し側プログラムに戻す必要があります。 関数は、後でアクセスできるように、何らかの変数に割り当てる必要があります。これには、間接割り当て(名前付き関数を宣言すると自動的に名前が現在のスコープに追加されるほとんどの一般的な言語)と直接割り当て(匿名関数を変数に直接割り当てる)が含まれます。 関数に名前を付ける必要はありません。 関数はユーザーが作成する必要があります -言語から変数にデフォルト関数を割り当てることはできません。 標準的な抜け穴はありません、お願いします。 これはcode-golfであるため、バイト単位の最低スコアが優先されます。

5
素数を素数の適切なサブセットにマッピングする自然数内の全単射
定義 全単射セットからSセットには、Tから関数でSのTこのような1つの要素Tに正確に1つの要素によってマッピングされますS。 セット内の全単射で Sから全単射であるSとS。 自然数は、より大きいまたは等しい整数です0。 セットのサブセットは、セットS内のすべての要素もにあるようなセットですS。 適切なサブセットセットのはSの部分集合である集合であるSと等しくされていませんS。 仕事 入力として自然数を取り、自然数を出力するプログラム/関数を作成します。これは全単射でなければならず、プログラム/関数の下の素数のイメージは、{f(p) : p ∈ ℙ}の適切なサブセットである必要があります。ℙここℙで、は素数です。 得点 これはcode-golfです。バイト単位の最短回答が優先されます。標準の抜け穴が適用されます。

5
二項関数のプロパティ
抽象代数の多くの重要なトピックには、セットに作用するバイナリ関数が含まれます。このようなトピックの調査では、このような関数の多くのプロパティが定義されています。 課題は、特定のドメイン上の特定のバイナリ関数がこれらのプロパティのうち5つを所有しているかどうかを判断することです。 プロパティ 閉鎖 可能なすべての出力がドメイン内にある場合、バイナリ関数は閉じられます。 連想性 関数が一連の入力に適用される順序が結果に影響を与えない場合、バイナリ関数は結合的です。つまり、常にに等しい$場合、結合的(a $ b) $ cですa $ (b $ c)。値(a $ b)は入力として使用されるため、連想関数を閉じる必要があることに注意してください。 可換性 入力の順序を入れ替えても結果が変わらない場合、バイナリ関数は可換です。言い換えれば、a $ b常に等しい場合b $ a。 身元 eドメインa $ e = a = e $ aにすべての要素が存在するような要素がドメインに存在する場合、バイナリ関数にはアイデンティティ要素がありaます。 べき等 バイナリ関数は、2つの同一の入力に適用してその数を出力として与えた場合、べき等です。言い換えれば、ドメイン内のa $ a = aすべての場合a。 入力 行列形式の関数が与えられます。関数の領域は数値0 ... n-1になります。ここnで、は行列の辺の長さです。 値(a $ b)は、行列でath行のbth要素としてエンコードされます。入力行列である場合Q、次にa $ b=Q[a][b] たとえば**、ドメインのべき乗関数(Pythonの場合)[0, 1, …

3
最も効率的なバイナリ関数を計算する
今日は、最も効率的なバイナリ関数を計算します。より具体的には、定数入力0または独自の出力に関数を適用して式を作成する場合、可能な限り短い式ですべての正の整数を表現できる関数を計算し、小さい整数に高い優先順位を付けます。 この関数は次のように構築されます。 1から始めて上に行く整数ごとに、まだ出力を割り当てていない最短の式を選択し、その整数をその式の出力にします。式の長さの関係は、左の引数が小さくなり、次に右の引数が小さくなります。仕組みは次のとおりです。 最初は、1は割り当てられていません。割り当てられていない最も短い式はf(0, 0)ですので、1に設定します。 現在、2は割り当てられていません。割り当てられていない最短の式はf(f(0, 0), 0)= f(1, 0)とf(0, f(0, 0))= f(0, 1)です。ネクタイは、より小さい左引数に向かって壊れていf(0, 1) = 2ます。 残っている最短の未割り当て式はf(f(0, 0), 0)=なのでf(1, 0)、f(1, 0) = 3です。 これで、2 fと3 のみの式がなくなった0ため、それぞれをもう1つ追加する必要があります。左の引数、右引数で絆を断ち切る、我々が得るf(0, 2) = 4ことから、f(0, f(0, f(0, 0))) = f(0, f(0, 1)) = f(0, 2)。 続いて、我々は持っていますf(0, 3) = 5、f(1, 1) = 6、f(2, 0) = 7、f(3, …

11
緩い範囲の解釈
緩い範囲の解釈 ListSharpは、多くの機能を備えたインタープリター型プログラミング言語です。これらの機能の1つは、次のように機能する1つのインデックスベースの範囲作成者です。 あなたはと範囲を定義する(INT) TO (INT)か、単に(INT)どこの両方または単一のintは分からに行くことができる最大のint32値 次に、これらの範囲を使用して、境界を超えることを恐れずに配列の要素を抽出できます したがって: 1 TO 5 生成: {1,2,3,4,5} 3 生成: {3} AND演算子を使用して範囲を追加できます 1 TO 5 AND 3 TO 6 生成: {1,2,3,4,5,3,4,5,6} これは負の数でも機能することを忘れないでください 3 TO -3 生成: {3,2,1,0,-1,-2,-3} 課題は次のとおりです。 入力 文字配列および文字列として以前に定義された範囲句 出力 1インデックスの要素は範囲の位置に基づいています(非既存/負のインデックスは空の文字に変換されます) 勝つ方法 コードゴルフの挑戦として、あなたは勝つために最短のバイト数でプログラムを作成することになっています 空の文字は存在しないことが指摘されているため、無視する必要があります(ここでは、わかりやすくするためだけに示しましたが、混乱させています) テストケース: input array is: {'H','e','l','l','o',' ','W','o','r','l','d'} range clause: "1 TO 3" …
13 code-golf  array-manipulation  parsing  code-golf  string  ascii-art  kolmogorov-complexity  code-challenge  code-golf  sequence  code-golf  number  array-manipulation  sorting  code-golf  string  function  code-golf  arithmetic  code-golf  math  sequence  number-theory  primes  restricted-source  javascript  code-challenge  polyglot  rosetta-stone  code-golf  code-golf  regular-expression  code-golf  math  code-golf  math  primes  code-golf  ascii-art  kolmogorov-complexity  binary  code-golf  math  sequence  code-golf  sequence  subsequence  code-golf  string  code-golf  parsing  music  code-golf  grid  game  path-finding  board-game  code-golf  string  binary  code-golf  array-manipulation  balanced-string  code-golf  code-golf  algorithm  code-golf  string  number  arithmetic  array-manipulation  code-golf  array-manipulation  binary-tree  tree-traversal  code-golf  code-golf  tips  code-golf  string  base-conversion  code-golf  tips  s.i.l.o.s  code-golf  string  ascii-art  code-golf  code-challenge  code-golf  game 

3
Brainfuckのビット演算子
あなたの仕事は、以下の二項演算子のそれぞれに対して1つのBrainfuckプログラムを作成することです。各プログラムは、入力から1つまたは2つの8ビット数(AおよびB)を取得し、指定された操作を計算する必要があります。 A XOR B A AND B A OR B A Shifted Left by 1 (circular shift) NOT A 5つすべてを実装する必要はありません。スコアは次の方法で計算されます。 #totalCharacters + {4000 * #problemsNotCompleted} したがって、有効なスコアはゼロ(最高)から20,000(何も完了していない)までです。 結果を保存する場所や、入力を保存するかどうかは気にしません。8ビットセル、および必要なだけの空のセルを右側にのみ想定します。 最適なメモリ位置に番号がすでにあると仮定することができるので、IO操作を心配する必要はありません。
13 code-golf  binary  brainfuck  code-golf  code-golf  ascii-art  random  code-golf  code-golf  code-challenge  sorting  code-golf  code-challenge  java  code-golf  statistics  code-golf  code-challenge  fastest-code  code-golf  math  code-golf  math  kolmogorov-complexity  code-golf  code-golf  array-manipulation  combinatorics  code-golf  kolmogorov-complexity  popularity-contest  underhanded  code-golf  math  floating-point  code-golf  interpreter  code-golf  music  code-golf  code-golf  cryptography  code-challenge  scrabble  code-golf  code-challenge  popularity-contest  quine  code-golf  quine  cryptography  code-golf  kolmogorov-complexity  code-golf  printable-ascii  code-golf  chess  code-golf  math  number-theory  code-challenge  c  code-golf  random  popularity-contest  hello-world  code-shuffleboard  code-golf  compression  grammars  code-golf  tips  code-golf  sequence  code-golf  string  code-challenge  sorting  permutations  code-golf  string  code-challenge  optimization  code-golf  interpreter  code-challenge  string  code-golf  math  number  fibonacci  string  compression  c#  code-golf  chemistry  popularity-contest  math  c  c++  java  code-golf  math  function  code-golf  complex-numbers  code-golf  geometry 

2
ローマ数字変換機能
ローマ数字の文字列を整数に変換する最短の関数を作成します。 各手紙の規則は、ウィキペディアのページで見つけることができます。1,000を超える文字には、高い値を示すために括弧が配置されます。 要件: ローマ数字1から500,000に変換する必要があります 1分以内に完了する必要があります 利点をもたらす可能性のある組み込み関数を使用しません(例:ローマ数字を整数に変換する関数) 関数です 関数は分数をサポートする必要はありません。無効な入力は、0を返します。 最短の機能が優先されます。同点の場合、最も投票数の多いものが勝者となります。 テストケース 入力 III 出力 3 入力 IIII 出力 0 入力 XVI 出力 16 入力 (C)(D)(L)MMI 出力 452001

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 

13
劇場の座席
仕事 劇場には前から後ろにラベルが付けAられた10列があり、J各列には15席があり、左から右に1から15の番号が付けられています。 プログラムは、次のルールを使用して最適な座席を選択します。 規則1:1つの予約の座席はすべて、同じ列に並んでいる必要があります。 規則2:座席は、可能な限り正面に近く、次に可能な限り左側に配置する必要があります(最低文字、最低番号) 整数入力(n)として必要なチケットの数を取り、lengthのリストで利用可能な最適な座席を出力する関数を作成しますn。 あなたのプログラムは: -11>入力または入力> 15 *の場合に出力 -1座席が利用できない場合に出力* B(n)ユーザーが希望の座席数を入力するために使用できる機能があります。 * -1を簡単に出力できる場合は、リストに-1を出力できます 例 I / O 呼び出すB(5)新しい配列にして返す必要があります[A1, A2, A3, A4, A5] 呼び出すB(2)ことがその後返す必要があります後に[A6, A7] 呼び出すB(10)ことがその後返す必要があります後に[B1, B2, ... B9, B10] 呼び出すとB(-1)、常に返す必要があります-1 ゴルフされていないソリューションPython Theatre = [ [False] * 16 ] * 11 def B(n): if 0 <= n <= 15: for …

2
Xが3より大きく、XとYの間に少なくとも2つの差がある
私はいくつかのC ++をゴルフしようとしています。この条件を短くすることは可能ですか? X > 3 & X - Y > 1 (もちろん、空白の削除は別として。) だから、X少なくともです4がX >= Y + 2。 XおよびYは、[0,5]間隔の整数です。 ビット単位の数式を見つけようとしましたが、失敗しました。
11 code-golf  number  tips  c++  code-golf  popularity-contest  obfuscation  code-golf  c  code-golf  board-game  hexagonal-grid  code-golf  game  grid  code-golf  number  permutations  popularity-contest  math  graphical-output  number-theory  king-of-the-hill  code-challenge  compression  code-challenge  fastest-code  code-golf  math  ascii-art  animation  code-golf  popularity-contest  generation  counting  fastest-code  fastest-code  popularity-contest  image-processing  king-of-the-hill  code-golf  conversion  binary-tree  code-golf  math  number  rational-numbers  division  code-golf  restricted-source  hashing  atomic-code-golf  logic-gates  code-golf  function  code-challenge  puzzle-solver  ai-player  test-battery  popularity-contest  music  compression  code-golf  number  stack  atomic-code-golf  logic-gates  ascii-art  popularity-contest  code-golf  date  grid  code-challenge  game  code-golf  parsing  code-golf  math  geometry  sequence  popularity-contest  code-trolling  code-golf  string  restricted-source  code-golf  quine  king-of-the-hill  code-golf  math  code-golf  simulation  code-golf  ascii-art  code-challenge  sorting  optimization 

22
投票のCファクターを見つける
この課題では、Cファクターと呼ばれる数を把握することにより、他の一連の投票が与えられた場合、投票がいかに物議を醸すかを決定します。Cファクターとは何ですか? まあ、あなたが選挙で複数の票を持っていると想像してください。選挙では、2つの異なる候補者を代表して使用することに1します0。これが私たちのサンプル選挙での10票です: 0110111011 ここで、候補者の投票のCファクターを見つけたいとしましょう0。次の関数でそれを行うことができます: f(o 、v )= a b s (o − m e a n (v ))f(o,v)=abs(o−mean(v)) f(o,v) = abs(o-mean(v)) で、我々はC-係数を決定したいの投票で、投票の配列です。したがって、私たちの関数を使用して、候補者の投票のCファクターを取得します。fffov0 f(0 、[ 0 、1 、1 、0 、1 、1 、1 、0 、1 、1 ] )= 0.7f(0,[0,1,1,0,1,1,1,0,1,1])=0.7 f(0, [0,1,1,0,1,1,1,0,1,1]) = 0.7 Cファクターが低いことは、投票が他の投票と比較して物議を醸しにくいことを示しています。したがって、候補者への投票は、候補者へ0の投票よりも他の投票とは異なり1ます。比較すると、候補者1投票のCファクターはであり、他の投票に似ているため、議論の余地はあまりありません。0.30.30.3 チャレンジ 関数を記述して、投票の結果から投票のCファクターを決定します。f(o 、v )f(o,v)f(o,v)ov o0またはのいずれかである必要があります1。 v ゼロと1を含む任意の長さの配列(または言語仕様に応じて同様のコンテナー型)である必要があります。 関数は、上記の式または変更されたメソッドを使用して、関数パラメーターが指定された結果のCファクターをコンソールに返すか、出力する必要があります。 …

1
たたみばりソルバー
バックグラウンド タタミバリはニコリが設計した論理パズルです。 :Tatamibariパズルは、その中のシンボルの三つの異なる種類の長方形のグリッド上で再生され+、-。と|。ソルバーは、次の規則に従ってグリッドを長方形または正方形の領域に分割する必要があります。 すべてのパーティションには、シンボルが1つだけ含まれている必要があります。 +シンボルは、正方形の中に含まれている必要があります。 |シンボルは、幅よりも大きい高さを有する矩形に含まれなければなりません。 -シンボルは、高さよりも大きな幅を有する長方形に含まれなければなりません。 4つのピースが同じコーナーを共有することはありません。(これが通常の畳の置き方です。) 以下は、解決策を含むパズルの例です。 仕事 与えられたタタミバリパズルを解きます。 入出力 入力は、指定されたタタミバリパズルを表す2Dグリッドです。各セルは、4つの文字のいずれかが含まれています+、-、|、、お好みのキャラクターは非手掛かり細胞を表現するために。テストケースでは、アスタリスク*が使用されています。 タタミバリパズルの有効なソリューションを明確に表すことができる適切な出力形式を選択できます。これには以下が含まれますが、これらに限定されません(不明な場合は、コメントで質問してください)。 4タプルのリスト。各タプルには、長方形の上部インデックス、左インデックス、幅と高さ(または同等の表現)が含まれます。 入力と同じ形状の数値グリッド。各数値は長方形を表します 座標セットのリスト。各セットには、長方形内のセルのすべての座標が含まれます パズルに複数のソリューションがある場合、有効なソリューションをいくつでも(1つ以上)出力できます。入力には少なくとも1つのソリューションがあることが保証されています。 テストケース Puzzle: |-* *+| *-* Solution: 122 134 554 ===== Puzzle: +*** **|* *+** ***- Solution: 1122 1122 3322 3344 ====== Puzzle: |*+*+ ***** ****- ***+| +**** Solution: 12233 12233 44444 55667 …

5
t9のような機能を実装する
今日の課題は、t9のような機能を実装することです。 2つのパラメーターのみを持つ関数を実装します。 文字列で1つの電話番号と、単語のリストを含むテキストファイルのコンテンツを受け取ります(特定の改行スタイルは想定しないでください)。 リンクhttps://raw.githubusercontent.com/eneko/data-repository/master/data/words.txtを使用して機能をテストするか、使用することができます/usr/share/dict/words(詳細については、単語のリストを含むテキストファイルをチェックしてください[閉じる]情報)。 常に少なくとも2つの番号を受け取ると想定できます。 番号を指定すると、単語のリストから読み取って、それらの単語にマッピングされている文字で始まる単語を返します。これは、入力は2から9までの数字でなければならないことを意味し ます。無効な入力を受け取った場合は、何でも好きなことができます。 一致が見つからない場合は、空のリストnull/ nilまたはを返すことができます0。 携帯電話のキーは同等の文字にマッピングされていることに注意してください: 0と1は無効です 2件一致[abc] 3一致[def] 4試合[ghi] 5一致[jkl] 6一致[mno] 7一致[pqrs] 8試合[tuv] そして9試合[wxyz] 例: f('52726') //returns ["Japan","japan","Japanee","Japanese","Japanesque"...,"larbowlines"] f('552') //returns ["Kjeldahl","kjeldahlization","kjeldahlize"...,"Lleu","Llew"] f('1234') //makes demons fly out your nose or divide by 0 f('9999') //returns ["Zyzzogeton"] f('999999') //returns [] or null/nil or 0 関数を実行した後、任意の方法で関数を印刷できます。 ルール: 標準の抜け穴は無効です …

3
2つの織り交ぜられたチェーン
で、この質問、私は機能と「チェーン」機能を定義しました。 順列です。つまり、すべての値が1つの値にマップされ、1つの値によってのみマップされます。 また、関数またはその逆を繰り返し適用することにより、他の値から任意の値を取得できます。 これを行う関数はたくさんあり、それらのいくつかは非常に単純です(その質問の回答を参照してください)。次に、「織り交ぜられた」関数と呼ぶ関数の別のクラスを定義します。織り交ぜ機能セットに機能であるA 2つの無限パーティション有し、0および1機能の両方に鎖関数であるように0と1。 値ことをこれは、0の値にマップすることができない1関数またはその逆の下で。 仕事 あなたの仕事は、正の整数に対して織り交ぜられた関数を実行または定義するコードを書くことです。織り交ぜの基準を満たしていれば、機能は何でもかまいません。答えに関数が織り込まれている理由についての説明を含める必要があります。 これはコードゴルフの質問なので、回答はバイト単位でスコアリングされ、バイト数が少ないほど優れています。

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