タグ付けされた質問 「code-golf」

コードゴルフは、ソースコードの最小バイトで特定の問題を解決するための競争です。

10
バイナリツリーのバランスが取れているかどうかを確認する最短プログラムを作成する
バランスの取れたバイナリツリーの各ノードでは、左の子サブツリーと右の子サブツリーの高さの最大差は最大1です。 二分木の高さは、ルートノードからルートから最も遠いノードの子までの距離です。 以下に例を示します。 2 <-- root: Height 1 / \ 7 5 <-- Height 2 / \ \ 2 6 9 <-- Height 3 / \ / 5 11 4 <-- Height 4 バイナリツリーの高さ:4 以下は、二分木とそれらがバランスされているかどうかに関するレポートです。 上記のツリーは不均衡です。 上記のツリーはバランスが取れています。 バイナリツリーのルートを入力として受け入れ、ツリーのバランスが取れていない場合はfalsey値を返し、ツリーのバランスが取れている場合はtrue値を返す、可能な限り最短のプログラムを作成します。 入力 バイナリツリーのルート。これは、ルートオブジェクトへの参照の形式でも、バイナリツリーの有効な表現であるリストの形式でもかまいません。 出力 真理値を返します:ツリーのバランスが取れている場合 falsey値を返します。ツリーのバランスが取れていない場合。 二分木の定義 ツリーは、値と2つの他のツリーまたはそれらへのポインターを含むオブジェクトです。 バイナリツリーの構造は次のようになります。 typedef struct T { …

5
自己採点プログラム
独自のスコアを出力するのは難しいですが、そこにあるすべての答えは出力をハードコーディングするだけで、退屈なようです1。それで、新しい挑戦をしましょう。バイト単位での独自の長さは、文字列に続いて、あなたのプログラムを出力しなければならない" bytes"が、私たちは除去することにより、そのサイズを小さくした場合にハードコーディングソリューションを防止するために、任意の 1つのバイトを、新しいプログラムはまた、出力はそれはまだ続く新しいバイト・カウント、です必要があります" bytes"。出力では大文字と小文字を区別する必要はありません。末尾の改行を出力することもできます。 回答はバイト単位で記録され、バイト数は少ない方が良いです。 1:私は実際にいくつかの答えが好きです。

5
タオルの日を忘れた
タオルの日を忘れた サンドボックスリンク 両方の例のPHPスクリプト(エラー、文字列のフォーマット) 修正されたphpスクリプト、入力は自明です $argv異なる結果を表示するための入力コメント/コメント解除の多いPHPスクリプト ご存知かもしれませんが、5月25日はタオルの日としてよく知られています。これは、タオルの用途が多いためです。 本「ギャラクシーへのヒッチハイカーのガイド」の簡単な抜粋(個人的に私はこの本を「毎日のガイド」として取りました): 「タオルは、星間ヒッチハイカーが持つことができる最も有用なものに関するものです。部分的には、実用的な価値が非常に高いです。」 タオルに関する詳細情報が必要な場合は、このSE.scifiの回答を確認してください チャレンジ 足の毛布として使用するタオルでこれを行うことを願っています。 2つの入力を受け取る有効なプログラミング言語で完全なプログラムまたは関数を記述します size Integer : #The size message string : #A sentence これらの値でタオルを描く方法は? 最初の使用size: 入力したサイズに応じてタオルを描きます。タオルのascii-art width = 12*size #the line that has the "bar" its always present with different sizes Width is defined as: from the first | to the …

2
非円形性スコアをプログラムする
あなたのタスクは数学関数をプログラムすることです。これは、2D平面内のs空ではない有限Aの点集合を取り、s(A)次の特性を満たす非円形性スコアを出力します。 正定性:のすべての点を含む円または直線があるA場合s(A) = 0。さもないとs(A) > 0 単射性:非負の実数の単射です。つまり、すべての非負の実数に対して、などの平面のr有限サブセットが存在Aしs(A) = rます。 Translation Invariance: すべてのベクトルおよびall sに対して、翻訳不変です。s(A) = s(A + v)vA スケール不変性: すべておよびすべてのs場合s(A) = s(A * t)、スケール不変です。t≠0A 連続。 関数(実数へのa点のマッピング)が実数の標準絶対値と平面の点の標準ユークリッドノルムを使用して連続している場合、連続sと言われます。f(p) := s(A ∪ {p})p 直感的に言えば、この非円形性スコアは、線形回帰の相関係数に似たものと考えることができます。 詳細 理論上の関数は実数で動作する必要がありますが、この課題の目的のために、浮動小数点数を代用として使用できます。提出の説明と、これら5つのプロパティが保持される理由を説明してください。入力として、座標の2つのリスト、またはタプルまたは同様の形式のリストを使用できます。入力内のポイントは繰り返されない、つまりすべてのポイントが一意であると想定できます。

4
「半分空のグラス」のようなものはありません
グラスが半分いっぱいなのか半分空っぽなのかという修辞的な質問を知っているでしょう。私はこのフレーズに少しうんざりしているので、プログラムでガラスの膨らみや空さに関するこの混乱を解消する時が来たと判断しました。 あなたの仕事は、ASCIIいガラスの ASCIIアート表現を取り、対応する素敵なガラスの ASCIIアートを出力するプログラムを書くことです。それはまた、ガラスであるかどうかを決定しなければならないfull、mostly full、mostly emptyまたはempty出力これも(任意4定数、異なる出力値が何を)。 TL; DR 入力は、グラスの内側と外側にランダムに分布するグラス(#キャラクター)と液体(a-z)のASCIIアートです。ガラス内の液体は落下して底に溜まり、ガラス外の液体は廃棄されます。液体が底に落ち着いた後、グラスのASCIIアートを出力します。ガラスがどれだけいっぱいかを判断し、それも出力します。 glyい素敵なメガネ ガラス一般的には、で作られた容器であり、#底部、両側壁なし上部と文字。 有効なメガネには穴がありません。(すべての#キャラクターを接続する必要があります。) #入力ASCIIアートの各行に少なくとも2つの文字があるか、ないかのいずれかです。正確に1つの行はありません#。 入力ASCIIアートの一番上の行には、常に2があり#ます。 有効なメガネには、#キャラクターの境界壁に1つのローカルミニマムがあります。これは、液体がどこかに閉じ込められないことを意味します。 ガラスの境界壁には局所的な最大値はありません。 #ガラスの底の下には何もありません。 ガラスの内部は常に接続されたスペースです。 入力に先頭/末尾の空白と改行が含まれる場合があります。 有効なメガネと無効なメガネの例: VALID (possible input to your program): # # # # #### # # # # # # # # # # # # ## # # # # ### # …

11
triplegolf-ソースコードの長さだけでなく!
この課題の目標は、次の3つの長さがまったく同じであるプログラムを作成することです。 ソースコードの長さ 標準出力に出力する出力の長さ 選択した(変更されていない)コンパイラで生成されるコンパイラ警告の長さ 勝者は、3つの基準をすべて満たす最短のコードであり、少なくとも1文字の長さが必要です。 物事を盛り上げるために、出力の文字数が3未満の場合、各文字の長さに5ポイントのペナルティが加算されます(単一のタイプの場合は+10、2つの場合は+5)。 (改行は選択として1文字または2文字としてカウントされますが、3つの基準すべてで一貫している必要があります。先頭および末尾の空白は、3つの基準すべての行で無視されます) 等しいスコアの場合、(ゴミの代わりに)最も興味深い結果を出力するものが勝者です。
15 code-golf 

5
現在の干支は何ですか?
指定された国に従って、指定された時間の東部干支の絵文字を表示します。 東の黄道帯は、動物とその評判の高い属性を、12年周期で繰り返される各年に割り当てる分類体系です。また、時間に割り当てられます。 ルール: 国はISO 3166-1 alpha-3コードで指定する必要があります。一覧はこちらです。 入力形式は次のようにする必要があります<ISO code> HH:MM。入力は単一の文字列でなければなりません。この形式に適合しない入力は、ドントケアの状況に該当します。 与えられた時間が以下のチャートの境界内にある場合、どちらの黄道帯も出力できます。 これはコードゴルフであるため、バイト単位の最短コードが優先されます。 黄道帯: 国が指定されていない黄道帯がデフォルトです。 最初の干支(23:00 – 01:00): ラット🐀(U + 1F400) ペルシャ(IRN)のマウス🐁(U + 1F401) 2番目の干支(01:00 – 03:00): 牛🐂(U + 1F402) ベトナムの水牛🐃(U + 1F403)(VNM) ペルシャの牛🐄(U + 1F404) 3番目の干支(03:00 – 05:00): タイガー🐅(U + 1F405) ペルシャのヒョウ🐆(U + 1F406) 4番目の干支(05:00 – 07:00): ウサギ🐇(U + 1F407) ベトナムの猫🐈(U …

7
10進数の「XOR」演算子
多くのプログラミング言語は、整数の2進数(2進数)を操作する演算子を提供します。これらの演算子を他のベースに一般化する1つの方法を次に示します。 ましょう、X及びYは塩基で一桁の数字であるB。単項演算子の定義~とバイナリ演算子&、|および^、そのようなことを: 〜x =(B-1)-x x&y = min(x、y) x | y = max(x、y) x ^ y =(x&〜y)| (y&〜x) B = 2の場合、おなじみのビット単位のNOT、AND、OR、XOR演算子が得られることに注意してください。 B = 10の場合、「10進数XOR」テーブルを取得します。 ^ │ 0 1 2 3 4 5 6 7 8 9 ──┼──────────────────── 0 │ 0 1 2 3 4 5 6 7 8 9 1 │ …
15 code-golf  math  number 

30
割合を見つける
私たちはしばらくの間、素敵で簡単な挑戦をしていないので、ここに行きます。 それぞれが000より大きい整数のリストと入力としてのインデックスを指定すると、リストの合計の指定されたインデックスにあるアイテムの割合を出力します。 出力は、フロート/整数の自然な表現があなたの言語(単項式、10進数、教会の数字など)にあるものでなければなりません。何らかの方法で出力を丸めることを選択する場合、小数点以下2桁以上にする必要があります(合理的な場合、1.21.21.2は丸める必要はありませんが、1.201.201.20も完全に受け入れられます)。 インデックスは1インデックスまたは0インデックスのいずれかで、常に配列の境界内にあります。 これはcode-golfなので、バイト単位の最短コードが勝ちです! 例 1インデックスを使用し、2 dpに丸めます list, index => output [1, 2, 3, 4, 5], 5 => 5 / 15 => 33.33 [7, 3, 19], 1 => 7 / 29 => 24.14 [1, 1, 1, 1, 1, 1, 1, 1, 1], 6 => 1 / 9 => 11.11 …

16
ヒドラの攻撃
ヒドラスを殺すことができる熟練した戦士であるのではなく(こちらとこちらをご覧ください)、今度はあなたは戦士を殺す方法やクリーチャーに対してどの武器を使用するかについての予備知識がありません。 この問題では、1つの頭を切り落とすたびに、同じ場所で2つ成長します。多数のヘッドを同時に切断するメカニズムがないため、ヘッドの数は増えるだけです。この場合、HydraはN(N⩾1)頭から開始できます。レッツ・コールの最初の出会い世代と我々として第一世代から頭を表します0、として最初の打撃後に作成されたヘッド1ように、と。 入力 NHydraが最初に持つヘッドの数を表す整数と、Nインデックスを含むサイズのリスト(この例では0インデックス形式を使用します)が与えられ、ヘッドが切り取られます。与えられたインデックスは常に有効であると想定できます-頭を切り落とすとリスト(つまり頭)が大きくなることに注意してください。 例 入力:N = 4および[0,4,2,5] ジェネレーション0-攻撃インデックス0 0 0 0 0 => 1 1 0 0 0 ^ ^ ^ ジェネレーション1-攻撃インデックス4 1 1 0 0 0 => 1 1 0 0 2 2 ^ ^ ^ ジェネレーション2-攻撃インデックス2 1 1 0 0 2 2 => 1 1 3 3 …
15 code-golf 

18
数字の簡素化
どうして、テレビ画面に1秒間表示された6桁または7桁の電話番号を思い出せないのですか?!以下に説明する特別なテクニックを使用すると、ウォーキング電話帳になります! 明らかに、数字402は110010010数字337377よりも覚えやすく、数字は数字よりも覚えやすい957472です。これは、記憶された番号は、一方ではできるだけ少ない数字を含む必要があることを意味し、他方では、できるだけ多くの繰り返し番号を含むことが望ましいことを意味します。 記憶の困難さの基準として、numberの桁数とnumberの異なる桁数の合計を取ります。記憶された番号は別の番号システムで書くことができ、おそらく覚えやすくなります。たとえば65535、16進表記の数字は次のようになりFFFFます。 仕事 複雑さの基準を最小限に抑えるために、数値システムのベースを選択するプログラムを作成する必要があります。番号体系の基数は2〜36の範囲で選択する必要があり、その後、数字0-9と英字A-Zを使用して数値を表すことができます。 入力 入力には、1〜999999999の10進整数が含まれます。 出力 出力には、番号体系の基数(2〜36)が含まれている必要があります。これにより、記憶の複雑さの基準と、選択した番号体系の番号が1つのスペースで区切られます。複数のベースが基準に同じ値を与える場合、それらの中から最小のものを選択します。 ノート 文字は大文字でなければなりません(A-Z)。 テストケース 入出力 1 2 1 2 3 2 65535 16 FFFF 123 12 A3

14
マップ内の指定された長方形の外側にランダムポイントを生成します
前書き 競技場のこの視覚化を考えると: (0,0) +----------------------+(map_width, 0) | A | |-----+-----------+----| | D | W | B | |-----+-----------+----| | C | +----------------------+(map_width, map_height) (0, map_height) ゲームがプレイされるマップ全体は、コーナー座標(0,0)および(map_width、map_height)を持つ長方形です。敵のスポーンに適格なポイントは、連合S=⋃(A,B,C,D)S=⋃(A,B,C,D)S = \bigcup (A, B, C, D) チャレンジ S.の内側にあなたのコードであることが保証されて戻ってランダムな点(x、y)は各座標の確率がされていることを意味し、任意の追加的なバイアスを導入することはできませんという書き込みコード均一に分布仮定生成する乱数のそれはあなたの選択(例えば機能与えられました| library | dev / urandom)は公平です。 バイト単位の最短ソリューションが勝ちます! 入力 合計6個の正の整数入力変数が順番に渡されます map_width, map_height, W_top_left_x, W_top_left_y, W_width, W_height。すべての領域(A、B、C、D、W)の(計算された)表面積はそれぞれ> 10であると想定できるため、空のスペース/領域はありません。 入力例: 1000, …
15 code-golf  random  game 

11
自動的に予測不可能に文字のアリアを組み立てます
タイトルを提供してくれた@ComradeSparklePonyに感謝します。 この課題は非常に単純でなければなりません。3つのリストが与えられます。 最初は、タイトルケースの名のリストです。 2番目は、小文字の形容詞のリストです。 3番目は、小文字の名詞のリストです。 名前、オプションの形容詞、名詞、およびoutputをランダムに選択してください<Name>'s <adjective> <noun>。ただし、各単語は同じ文字で始まる必要があります。すべての単語は文字で始まると想定できます。また、想定することもできます(ただし、回答する場合は注意してください): すべての単語はアルファベット文字のみで構成されていること 名前ごとに少なくとも1つの名詞があること 各名詞に少なくとも1つの名前があること ただし、形容詞はオプションであるため、出力は引き続き有効であるため、名前と名詞の特定のペアに対して形容詞が存在するとは想定できません。 共有レターを一律に選択する必要はありませんが、使用可能なすべてのレターは、発生する可能性がゼロ以外でなければなりません。ただし、特定の文字のすべての出力が、言語の乱数ジェネレーターの制限内で発生する可能性がほぼ等しいことを確認する必要があります。形容詞の場合、これは、この文字の他の形容詞のすべてと同じチャンスを持つ「この文字の形容詞なし」を意味する追加のエントリを持つことに相当します。 入力リストの例: Joan Neil Nicola Oswald Sherman Stephanie new novel old original second silent jeep noun novel output second sheep snake これらの入力の出力例(各行は個別の例です): Stephanie's second second Sherman's silent snake Oswald's original output Nicola's novel novel Neil's noun Joan's jeep …
15 code-golf  random 

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

6
音節の発音可能なナンセンスワードを生成する
あなたの仕事は、指定された数の「音節」で合理的に発音できるナンセンスな単語を生成することです。プログラムが実行されるたびに、異なる意味のない単語が生じる可能性があります。 発音性 発音可能な単語は、2つの子音グループに挟まれている可能性のある母音グループで構成される音節で構成されます。すべての音がすべての位置で発音できるわけではなく、これは言語に依存するため、英語話者が理解できるパターンを使用します 子音グループの開始: b c d f g h j k l m n p r s t v w y z bl br ch cl cr dr dr fr fr gh gl gn gr kn ph pl pr qu sc sh sk sl sm sn sp st th …

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