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

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

21
ローマ数字で1から100までカウントします…
ローマ数字で1から100までカウントするプログラムを作成し、これらの数値を標準出力で出力します。数字はそれぞれスペースで区切る必要があります。 組み込み関数を使用してローマ数字に変換したり、外部アプリケーションやライブラリを変換することはできません。 望ましい結果は I II III IV V VI VII VIII IX X XI XII XIII XIV XV XVI XVII XVIII XIX XX XXI XXII XXIII XXIV XXV XXVI XXVII XXVIII XXIX XXX XXXI XXXII XXXIII XXXIV XXXV XXXVI XXXVII XXXVIII XXXIX XL XLI XLII XLIII XLIV XLV XLVI XLVII …

30
最大シーケンス長を見つける
文字列があり、すべての文字の最大繰り返しシーケンスを検索するとします。 たとえば、サンプル入力が与えられた場合: "acbaabbbaaaaacc" サンプル入力の出力は次のとおりです。 a=5 c=2 b=3 ルール: あなたのコードは関数でもプログラムでも構いません-あなたが選択するために 入力は、stdin、file、またはfunctionパラメーターによることができます 出力には、入力に現れる文字のみを含める必要があります 入力の最大長は1024です 出力順序は重要ではありませんが、[char] = [maximum repeat sequence] [delimiter]の形式で出力する必要があります 文字列には任意の文字を含めることができます コンテストは、3日木曜日23:59 UTCに終了します。
29 code-golf 

30
4点が正方形を形成するかどうかを判別
入力として平面上の4点を取り、4点が正方形を形成する場合にtrueを返す関数を記述します。ポイントには、絶対値<1000の整数座標があります。 入力として4つのポイントの合理的な表現を使用できます。ポイントは特定の順序で提供されません。 最短のコードが優先されます。 正方形の例: (0,0),(0,1),(1,1),(1,0) # standard square (0,0),(2,1),(3,-1),(1,-2) # non-axis-aligned square (0,0),(1,1),(0,1),(1,0) # different order 非正方形の例: (0,0),(0,2),(3,2),(3,0) # rectangle (0,0),(3,4),(8,4),(5,0) # rhombus (0,0),(0,0),(1,1),(0,0) # only 2 distinct points (0,0),(0,0),(1,0),(0,1) # only 3 distinct points 縮退した正方形に対してtrueまたはfalseを返すことができます (0,0),(0,0),(0,0),(0,0)
29 code-golf  math 

13
何人のジミーを収容できますか?
で、この単純だが楽しい挑戦、あなたはジミーが彼らのプラットフォームで落ちるかどうかを決定するように求めていました。ジミーは3体の部分を持っている/、oと\このように配置されました /o\ プラットフォームはで表され-ます。ジミーは、プラットフォームの真上にない2つ以上の身体部分がある場合、プラットフォームから落下します。 いくつかの例: /o\ - ------- ジミーはすべての体の部分が体重以上であるためバランスを取り-ます。 /o\ ------ --- 2つの体の部分が-s を超えているため、ジミーはバランスを取ります。 /o\ -- ---- -- ジミーは2つのプラットフォームに分割されていてもバランスを取ります /o\ - 2つの体の部分がプラットフォームの上にないため、ジミーはバランスが取れません。 あなたの仕事は、-sとs(例えば文字列)だけを含む長さのあるコンテナとしてプラットフォームを取り、プラットフォーム上に配置できるジミーの数を出力するプログラムを書くことです。オーバーラップ。ジミーの体の一部は、弦の先頭の左側または弦の末尾の右側にあります。 これはコードゴルフなので、回答はバイト単位でスコアリングされ、より少ないバイトが目標になります。 テストケース 入力 - - - - - -- -- -- ---- - -- -- ------- - それぞれの出力 0 0 1 1 2 2 2 3
29 code-golf  string 

30
ジミーは彼のプラットフォームから落ちますか?
バックストーリー 友達のジミーに会う: /o\ ジミーは、プラットフォームに立つのが好きな小さなキャラクターです。プラットフォーム上に安全に立つジミーは次のとおりです。 /o\ ------------- 現在、ジミーはバランス感覚が優れているため、次のようにプラットフォームから片足を離して安全に立つことができます。 /o\ ------------------- 彼がプラットフォームから2つ以上の体の部分で立っている場合、彼は倒れますが。これらはどちらも、ジミーが陥る例です。 /o\ /o\ ---------- ---------------------- チャレンジ あなたの課題は、Jimmyがプラットフォームに落ちずに立つことができるかどうかを判断するためのプログラムを作成することです。 入力:ジミーの位置と彼の下のプラットフォームの位置を示す2行。これは、2つの個別の入力、単一の入力、または何らかの配列からのものです。 関数や標準入力など、合理的な形式で入力を行うことができます。あなたの言語が他のインプットメソッドをサポートしていない場合のみ、ハードコーディングに頼ってください。 出力:ブール値trueとfalse、またはそれぞれtrue / falseを表す整数1または0。 ブール値は、ジミーがプラットフォームにとどまることができるかどうかに基づいています-ジミーがプラットフォームにとどまることができる場合はtrue、彼が脱落する場合はfalseです。 プラットフォームのサイズは任意であり、自由に変更できます。あなたのプログラムはそれを説明する必要があります。 プラットフォームの長さをゼロにすることはできず、プラットフォームは完全でなければなりません(プラットフォームに穴がない)。 ジミーは、身体の一部がプラットフォームからぶら下がっているときに脱落することに注意してください。身体部分は、彼の身体の1つのASCII文字です。 プラットフォームの最後に空白を付ける必要はありませんが、プラットフォームの後に空白がある場合とない場合の両方の状況をプログラムで考慮する必要があります。 禁止されている標準的な抜け穴に注意してください。 テストケース /o\ ✔️ TRUE ------------- /o\ ✔️ TRUE ---------- /o\ ❌ FALSE ------------------ /o\ ❌ FALSE ------- /o\ ❌ FALSE - 得点 これはcode-golfであるため、バイト数が最も少なくなります。 …

28
チェス盤のすべての白または黒の正方形を出力します
前書き これがチェス盤の様子です。 あなたはそれa1が暗い正方形であることがわかります。しかし、b1ある光の正方形。 タスク 課題は、与えられたdark、lightまたはboth、すべての暗い色、明るい色、またはすべての正方形 を区切り文字(空白や改行など)で出力することです。すべての正方形の順序は重要ではありません。 テストケース Input: dark Output: a1 a3 a5 a7 b2 b4 b6 b8 c1 c3 c5 c7 d2 d4 d6 d8 e1 e3 e5 e7 f2 f4 f6 f8 g1 g3 g5 g7 h2 h4 h6 h8 Input: light Output: a2 a4 a6 a8 b1 …

7
ソースコードの変容
mbomb007は、自己切断プログラムを作成するように依頼しました。それは興味深い挑戦ですが、私は個人的に自分のプログラムが自傷行為になることを奨励したくありません。私は、すべてのプログラムの中心にあるのは、飛び出すのを待っている美しい蝶だと思うのが好きです。 そのため、初めてのCode Golfチャレンジでは、Stack Exchangeにバタフライを変身させます。プログラムは、独自のコードを入力および出力として受け入れ、I am a caterpillar!その後に同じ言語の別のプログラムのコードが続く必要があります(出力間に仕切りを入れても入れなくてもかまいませんが、蝶について話しているので、可愛さは重要です!)。この2番目のプログラムは出力するはずですI am a beautiful butterfly! 変態:このプログラムは自分自身を変更する必要があるため、入力として渡されます。私は、I am a caterpillar!ソースコードを出力するprintステートメントに他ならない退屈なネストされたプログラムが欲しくありません。コード自体を変形させる必要があるため、最も退屈な受け入れ可能な答えはI am a caterpillar、印刷し、入力から文字列を切り取って(これはコードである)、それを印刷するものです。もちろん、これは書くための非常にトリッキーな小さな要件であるため、「挑戦の精神」と考えるべきです。正式な要件は、「プログラムにプログラムと同じ長さのランダムな文字列が与えられているI am a butterfly場合、2番目のプログラムの実行時に5%未満の確率で印刷されるはずです」に設定されます。 概要: 入力として独自のコードを提供するI am a caterpillar!と、ソースコードのブロックが続く(間に区切り文字があるかどうかにかかわらず)印刷するプログラムを作成します。 ソースコードのこの2番目のブロックは、同じ言語としてコンパイル/解釈されると、印刷されます I am a beautiful butterfly! プログラムに入力として独自のソースコードが渡されず、代わりに独自のコードと一致しないランダムな文字列が与えられる場合、結果はコンパイル/解釈に失敗するかI am a butterfly!、少なくとも95%のランダムで印刷されない文字列(精神:入力から独自のソースコードを読み取り、それをつなぎ合わせてバタフライにします)。 変身のアイデアの精神を守り、独自のコードを変更している限り、これを証明していないのは安心ですが、入力を使用して回避するために抜け穴ゲームをプレイしようとしている場合は、それを証明するために。 標準的な抜け穴が適用されます これらの美しさで判断したいのですが、それは明らかに非定量的なアプローチなので、通常の「バイト数」ルートを使用して判断できます ボーナス:-20%-プログラムの最初の3文字と一致しない3文字の文字列を選択します。caterpillarプログラムを実行しますが、最初の3文字が指定された文字に変更されるように入力を変更する場合は、I am Batman!代わりに印刷してください。常にバットマンになりましょう。(これには同じランダムな文字列ルールが適用されます...変態!) 簡単な例(python): """ print "I am a beautiful butterfly!" …

5
4バンドの色分けされた抵抗の抵抗を計算する
抵抗器は一般に、抵抗値をオームで識別するために使用される色分けされたバンドを持っています。この課題では、通常の4バンド、タン、アキシャルリード抵抗のみを考慮します。それらを次のように表現します。 xyzt ここで、x最初の有効数字の最初のバンドであり、y第二の有効数字のための第2バンド、あるz乗算器のための第3バンド、及びtための第四の帯域であるトレランス。 それぞれはxyzt、バンドの色を短縮する文字を表します。 K = Black N = Brown R = Red O = Orange Y = Yellow G = Green B = Blue V = Violet A = Gray W = White g = Gold s = Silver _ = None したがって、たとえば、NKOg特定の抵抗器があります。 抵抗は、次の表を使用して計算できます。 表が示すように: xとyを除く任意の文字することができg、sと_。 z以外のものを指定できます_。 私たちは、制限するだろうtだけであることをg、sまたは_。 (これは、私たちとまったく同じ抵抗器セットを扱う便利な抵抗計算機です。) …

30
Bogosortを実装する
数独を解くのは難しいですか?でも、ブルートフォースバージョン?これは少し簡単なコーディング演習です。私は願います。:-P bogosortを実装する最短の関数を作成します。具体的には、関数は次のことを行う必要があります。 入力として配列(またはあなたの言語の同等物)を取る 要素が並べ替えられているかどうかを確認します。もしそうなら、配列を返します そうでない場合は、要素をシャッフルし、再度開始します 最短のエントリーが勝ちです。同点の場合、カスタムコンパレータ(および/または擬似乱数ジェネレータ)をサポートする関数が優先されます。残りの関係は、以前の提出を支持することによって解決されます。 明確化:もちろん、それらを注文する方法がある限り、任意の要素タイプを使用できます。また、シャッフルは均一でなければなりません。この「私はそれをクイックソートしてシャッフルしたと呼ぶ」ビジネスはありません。:-)

30
ペダルのコサイン
上司からコサイン関数を書くように言われました。数学のオタクとして、私の心はすぐに適切なテイラーシリーズを思いつきました。 cos(x) = 1 / 0! - x^2 / 2! + x^4 / 4! - x^6 / 6! + ... + (-1)^k x^(2k) / (2k)! + ... しかし、私の上司はとてもうるさいです。彼は、計算するテイラー級数の項の数を正確に指定できるようにしたいと考えています。この関数を書くのを手伝ってもらえますか? あなたのタスク to xからの浮動小数点値とより小さい正の整数が与えられた場合、上で与えられたのテイラー級数の最初の項の合計を計算します。02 pin100ncos(x) これはcode-golfなので、最短のコードが優先されます。入力と出力は、標準的な方法で取得できます。標準的な抜け穴は禁止されています。 ノート xとの間に明確な区切りがある限り、入力は任意の合理的な形式で行うことができますn。 入力と出力は浮動小数点値である必要があります。少なくとも、標準の丸め規則で単精度IEEE浮動小数点数を使用して式を計算するのと同じくらい正確です。 使用されている言語に理にかなっている場合、正確な有理量を使用して計算を実行できますが、入力と出力は10進数形式のままです。 例 x | n | Output ----+----+-------------- 0.0 | 1 | 1.0 0.5 …

20
Stewieのシーケンス:+ *-/ + *-/
4つの基本的な操作、加算+、乗算*、減算-、除算/(整数ではなく浮動)を使用しましょう。 Stewieのシーケンスは次のように定義されます。 x = [x(1), x(2)] // Two initial numbers (one indexed) x(3) = x(1) + x(2) x(4) = x(2) * x(3) x(5) = x(3) - x(4) x(6) = x(4) / x(5) x(7) = x(5) + x(6) ... and so on. チャレンジ: 入力として2つの非負整数(x(1), x(2))と1つの正整数Nを取ります。 x(1)そしてx(2)、シーケンスの最初の2つの番号でNあり、出力する必要があるシーケンスの長さです。(リストを0ベースにすることもできます。この場合N、長さよりも1つ少なくなります)。 あなたはそれを仮定することはできませんx(2) >= x(1)。 N常に>21ベースの場合(>10ベースの場合)になります。 ゼロによる除算エラーを処理する必要はありません。 …

30
このチャレンジでは「+」文字を使用します
あなたのタスク:番号を指定すると、中心から離れた文字でnある「+」記号が生成さnれます。これがわかりにくい場合は、テストケースを確認してください。 入力の標準方法:出力は文字列または印刷でなければなりません。標準の抜け穴が適用されます。 Input: 1 Output: + ] 1 away from center `+`. Input: 2 Output: + ] 2 away from center `+`. +++ ] 1 away from center `+`. + Input: 3 Output: + ] 3 away from center `+`. + +++++ + + これはcode-golfなので、最短のコードが勝ちます!

4
輪郭に沿って矢印を移動する
サンドボックス 一定の時計回りまたは反時計回りの方向に一貫した矢印(各輪郭には独自の方向があります)と正の数nの矢印を持つ、閉じた重複しない2D輪郭(対角線上でも少なくとも1つのスペースで分離)のセットが与えられた場合、矢印を移動しますn輪郭に沿ってそれぞれの方向にステップします。矢印は、> v < ^それぞれ右、下、左、および上方向で表されます。他のキャラクターは、-(水平)、|(垂直)、+(角)です。矢印が角にある場合、矢印は現在の方向を維持し、方向転換が行われた後にのみ変更します。 任意の2つの角の間には常に直線のセグメント(またはスペース)があります(+-+水平の場合と垂直の場合と同様)-つまり、急Uカーブは禁止されています。コーナー間のセグメントは垂直または水平のいずれかであり、コーナーでの屈曲は常に90度です。 入力: 正の整数-- nステップ数 等高線のASCII表現-複数行の文字列、文字列のリスト、文字のリストなどです。 出力: すべての矢印が同じ輪郭でn、各輪郭の全体方向にステップがシフトしました。 テストケース: 1。 入力: n = 1 +----->-> | | | v---+ | | +---<-------+ 出力: +------>+ | v | +>--+ | | +--<--------+ 2。 入力: n = 2 +-----+ +---+ | | | | +-->--+ | v | …

14
元のビットチェック
範囲内の2つの整数取るプログラム/機能書くに包括的に、数字のバイナリ形式かどうかを返しますが、正確に一つは、異なるビットされています。000255255255 たとえば、とはバイナリ形式とがあり、これらは1ビット離れています。同様に、とはand であるため、trueを返します。1110000000000100000000152152152242424010011000000011000 ただし、コードは初期状態でなければならず、プログラムのいずれかのビットが反転した場合、エラーがスローされます。たとえば、プログラムがシングルバイトa(01100001)の場合、8つの変更可能なプログラムすべて: á ! A q i e c ` エラーをスローする必要があります。バイト単位で変更していることを確認してください(たとえば、実際の2バイト文字ではなく、実際にáはバイト表します)。225225225á テストケース: 0,1 => Truthy 1,0 => Truthy 152,24 => Truthy 10,10 => Falsey 10,11 => Truthy 11,12 => Falsey 255,0 => Falsey ルール: 可能なプログラム(バイト数* 8)が多数あるため、プログラムが適切に初期状態であることを検証できるテストフレームワークを提供するか、または初期状態の完全な証拠を提供します。 投稿する前に、プログラムが有効であることを確認してください。 出力は、真実/偽(どちらの方法でも問題ありません)であるか、2つの異なる非エラー値である必要があります エラーには、ランタイム、コンパイラ、インタプリタなどがあります。


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