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

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

14
出力グラハム数
ウィキペディアからグラハムの数のこの表現の64層すべてを出力するプログラムを作成します。 あなたの出力が正確に一致する必要があります(ここで、このASCIIバージョンを^表しKnuthのアップ矢印スラッシュとアンダースコアの組み合わせとは、大規模な水平方向の中括弧を表します): 3^^...............................................................................................................................^3 \_______________________________________________________________ _______________________________________________________________/ \/ 3^^.............................................................................................................................^3 \______________________________________________________________ ______________________________________________________________/ \/ 3^^...........................................................................................................................^3 \_____________________________________________________________ _____________________________________________________________/ \/ 3^^.........................................................................................................................^3 \____________________________________________________________ ____________________________________________________________/ \/ 3^^.......................................................................................................................^3 \___________________________________________________________ ___________________________________________________________/ \/ 3^^.....................................................................................................................^3 \__________________________________________________________ __________________________________________________________/ \/ 3^^...................................................................................................................^3 \_________________________________________________________ _________________________________________________________/ \/ 3^^.................................................................................................................^3 \________________________________________________________ ________________________________________________________/ \/ 3^^...............................................................................................................^3 \_______________________________________________________ _______________________________________________________/ \/ 3^^.............................................................................................................^3 \______________________________________________________ ______________________________________________________/ \/ 3^^...........................................................................................................^3 \_____________________________________________________ _____________________________________________________/ \/ 3^^.........................................................................................................^3 \____________________________________________________ ____________________________________________________/ \/ …

12
数字を0で除算する
人生のある時点で、0で割ることは不可能だと言われています。そしてほとんどの場合、その声明は真実です。しかし、禁止された操作を実行する方法があった場合はどうでしょうか?私の最新作へようこそ:b-numbers。 b-数字は虚数に少し似ています:関係する主な数字は数学的に不可能ではない式をi表します(表し)。この場合、は式を表すと言われます。ここから、が何に等しいかを簡単に判断できます。−1−−−√−1\sqrt{-1}bbb1010\frac{1}{0}x0x0\frac{x}{0} x0=x1⋅10=xbx0=x1⋅10=xb \frac{x}{0} = \frac{x}{1} \cdot \frac{1}{0} = xb タスク 0による除算を含む式が与えられた場合、単純化された値をに関して出力します。入力は、nが任意の有理数または10進形式の任意の数値の形式になることに注意してください。先頭の0と末尾の0は含まれません。bbbn/0b 入力例 4/0 1/0 0/0 80/0 -8/0 1.5/0 2.03/0 -1/0 -3.14/0 b/0 3b/0 -b/0 121/0 出力例 4b b 0 80b -8b 1.5b 2.03b -b -3.14b b 3b -b 121b スコア これはコードゴルフであるため、最も少ないバイトが勝ちます。標準的な抜け穴は禁止されています。 リーダーボード これは、通常のリーダーボードと言語ごとの勝者の概要の両方を生成するスタックスニペットです。 回答が表示されるようにするには、次のマークダウンテンプレートを使用して、見出しから回答を開始してください。 # Language Name, N bytes …
16 code-golf  math  number 

18
可変長の数量をデコードする
可変長数値表現(とも称されるVLQまたはuintvar)必要なバイト数としてのみ使用して28ビット整数値まで符号化する方法です。これは、特定のイベントデータのサイズを最小化する方法として、MIDIファイル形式で使用されていました。 仕組みはかなり簡単です。ビッグエンディアンの一連のバイトとして、各バイトの最上位ビット(MSB)1は、別のVLQバイトが続くことを示すためのものです。各バイトの残りの7ビットは、デコードされた値を構成します。 例(ウィキペディアから): [ 0x86, 0xc3, 0x17 ] => 106903 その他の参照:ウィキペディア、いくつかの男。 チャレンジ: 可変長の数量を指定して、整数値に変換します。 入力: 整数の有効なVLQを表す1〜4バイトまたは32ビット値タイプのリスト。 出力: VLQ入力の整数値。 ルールとスコアリング: これはコードゴルフなので、各言語のバイト単位の最短回答が勝ちです。 標準ルールとデフォルトのI / Oルールが適用されます。 (もちろん)禁止されている抜け穴。 コードのテスト(TIO.runなど)のリンクを提供してください。 回答の明確な説明を強くお勧めします。 この変換を処理するビルトインは禁止されていませんが、それらを使用しないほうがはるかに興味深いです。 テストケース: Input (VLQ) Output (int) [ 0x00 ] => 0 [ 0x07 ] => 7 [ 0x7f ] => 127 [ 0x81, 0x00 ] …

8
全方位電卓を作成する
インスピレーション。 逆。 指定されたオムニフィックス式を評価します。 Omnifixは通常の数学の挿入記法に似ていますが、引数を囲む各記号のコピーが追加されています。外側のシンボルは括弧の代わりになるため、追加の括弧は必要ありません。 加算、減算、乗算、除算、および正の実数(負の数を書き込むことができます-0-n-)を、言語の妥当な範囲内でサポートする必要があります。 プラスとマイナスでなければならない+と-、しかし、あなたは使用することができます*または×回および/または÷除算のために。リクエストに応じて、その他の妥当な記号を使用できます。 ブラウニーは、説明と追加機能(追加の演算、負の数、文字列など)を指摘します。回答にこれらの機能がない場合でも、それがどのようにできるかをお気軽に示してください。 可能であれば、ソリューションをテストするためのリンクを提供してください。 例 明確にするために、以下の説明では高いマイナス(¯)を使用して負の数を示しています。適切な形式を使用して負の数を返すことができます。 -5-2- → 3 +2+×3×2×+→ 8 (+2+×3×2×+→ +2+6+→ 8) -14--3-1--→ 12 (-4--3-1--→ -14-2-→ 12) +2.1+×3.5×2.2×+→ 9.8 (+2.1+×3.5×2.2×+→ +2.1+7.7+→ 9.8) ×3×÷-0-6-÷2÷×→ -9 (×3×÷-0-6-÷2÷×→ ×3×÷¯6÷2÷×→ ×3ׯ3×→ ¯9) ÷4÷-3-÷1÷2÷-÷→ 1.6 (÷4÷-3-÷1÷2÷-÷→ ÷4÷-3-0.5-÷→ ÷4÷2.5÷→ 1.6)

15
日曜日を計画してください!
夏の日曜日の朝に冷えたビールとテレビで、または冬にバドミントンをしたり、友達と一緒に究極の寒さをしたい人はいませんか? 1か月で何日冷やさなければならないかを知ることで、十分な情報を得られ、やりたいことを計画するのに役立つといつも思っています。パソコンの前に座って、コードゴルフの問題を解決したり、サッカーに出かけたりします。 だから、助けを私は、入力として2つの正の整数を取るプログラムや関数を記述し、YかつM、その特定の年の日曜日の数を(出力Y)と月(M各日曜日の日に続いて、(グレゴリオ暦によります))。 また、最短のコードが優先されることに注意してください。 入力制約 1000 <= Y <= 9999 1 <= M <= 12 出力 これらのテストケースには、その年のその月の各日曜日の日付が形式で出力されますDD-MM-YYYY。 サンプルテストケース テストケース1 サンプル入力 2017 1 サンプル出力 5 01-01-2017 08-01-2017 15-01-2017 22-01-2017 29-01-2017 テストケース2 サンプル入力 2018 2 サンプル出力 4 04-02-2018 11-02-2018 18-02-2018 25-02-2018 テストケース3 サンプル入力 2016 11 サンプル出力 4 06-11-2016 13-11-2016 20-11-2016 27-11-2016
16 code-golf  date 

1
イングレスグリフを描く
では、ロケーションベースのARモバイルゲーム生き方進入プレイヤーがアイテムを取得するために、ポータルと呼ばれるものをハックすることができます。(Ingressに興味がある場合は、チャットでpingして詳細を確認できます。ポケモンよりもましです。ダウンロードしてしまう場合は、レジスタンスを選択してください。) ハック出力を大幅に増やす方法の1つに、グリフハッキングミニゲームがあります。このゲームでは、プレーヤーは六角形のグリッドにグリフを描画する必要があります。 合計で、ゲームで実際に使用される約130の名前を持つ約115のグリフがあります。 グリフ この課題のために、グリッドの各ポイントに次のように番号を付けます。 このチャレンジの目的のためのすべてのグリフのリストは次のとおりです。リストは、各グリフをエッジのリストとして含むJSONオブジェクトです。 { "ABANDON": [[1, 6], [3, 4], [4, 8], [6, 10], [8, 10]], "ACCEPT": [[3, 7], [3, 8], [7, 8]], "ADVANCE": [[0, 9], [4, 9]], "AFTER": [[1, 2], [1, 6], [2, 7], [6, 10], [7, 10]], "AGAIN": [[4, 9], [6, 7], [6, 10], [8, 9], …

18
毛布を作ってください!
このような毛布が欲しい。各ストリップは上、下、上、下に行きます。印刷できますか? \\\\////\\\\////\\\\////\\\\////\\\\////\\\\//// \\//// \\//// \\//// \\//// \\//// \\//// //// //// //// //// //// //// ////\\ ////\\ ////\\ ////\\ ////\\ ////\\ ////\\\\////\\\\////\\\\////\\\\////\\\\////\\\\ \// \\\\// \\\\// \\\\// \\\\// \\\\// \\\ \\ \\\\ \\\\ \\\\ \\\\ \\\\ \\ \\\ //\\\\ //\\\\ //\\\\ //\\\\ //\\\\ //\ \\\\////\\\\////\\\\////\\\\////\\\\////\\\\//// \\//// \\//// \\//// \\//// \\//// \\//// //// …

7
ミニマックスツリーを評価する
アリスとボブは小さなゲームをしています。最初に、ルートノード(太い点で示されている)からツリーを描画します。内部ノードはなく、葉に番号が付いています。任意のノードに任意の数の子を含めることができます。 ルートから始めて、最初にプレイするのはアリス(A)です。現在のノードの子の1つを選択する必要があります。次に、ボブの番で、彼は同様に子ノードを選択します。これは、リーフノードに到達するまで続きます。 リーフノードに到達すると、ゲームオーバーです。アリスの目標は、できるだけ大きな値を持つノードで終了することであり、ボブの目標は、できるだけ小さな値を持つノードで終了することです。 ネストされた配列形式のツリーを指定すると、アリスとボブの両方が完全にプレイした場合に到達するリーフの値を返します。 例: 18: [[67, [[100, [[67, 47], [86], 21, 16], [[46, [14], 35, 85], [71, [18, 63, 69], 99, 22], 3]]], [[18, 32, 42, 80]], [[36, 70], [86, 53, 46, 59], [[41], 86, 35]]], 3] 60: [[[84, 35], [44, 60]], [[24, 98], [16, 21]]] 58: [[53, 77], …

3
アドバカドに関する挑戦
これに触発された。この挑戦の作成においてアボカドは害を受けませんでした。 こんにちは、私はアボカドのジュースを手伝う必要があるので、どのくらいの時間ジュークを主張するかを教えてくれるプログラムが必要です このASCIIアートアボカドを観察します。 ###### # # # #### # # # p# # ## #### # # # ###### このアボカドは、#sの外部(具体的には#各行のsの最初と最後のシーケンス)とピット(#アボカドの外部に触れないアボカドのsの形状)で構成されています。 これらのASCIIアートアボカドの厳密な実験を通して、私は次のことを発見しました。 avocado juice in fluid ounces = number of spaces inside avocado but outside pit (the pit is marked with a p in the example) + 2 * number of …

1
どのUbuntuバージョンがサポートされていますか?
入力日付を指定すると、エントリはその日付にサポートされているUbuntu Linuxディストリビューションのバージョンの完全なリストを出力します。 すべてのリリースの完全なリストは次のとおりです。 バージョンコード名リリース日サポートされるまで 4.10いぼ型イボイノシシ2004-10-20 2006-04-30 5.04 Hoary Hedgehog 2005-04-08 2006-10-31 5.10 Breezy Badger 2005-10-13 2007-04-13 6.06 LTS Dapper Drake 2006-06-01 2009-07-14 2011-06-01(サーバー) 6.10 Edgy Eft 2006-10-26 2008-04-25 7.04 Feisty Fawn 2007-04-19 2008-10-19 7.10 Gutsy Gibbon 2007-10-18 2009-04-18 8.04 LTS Hardy Heron 2008-04-24 2011-05-12 2013-05-09(サーバー) 8.10 Intrepid Ibex 2008-10-30 2010-04-30 …
16 code-golf  date 

2
RXによるValiDate ISO 8601
チャレンジ 最短の正規表現を見つける Prolepticグレゴリオ暦のすべての可能な日付(1582年の最初の採用前のすべての日付にも適用されます)を検証、つまり一致させます。 無効な日付と一致しません。 出力 したがって、出力は真実または偽です。 入力 入力は、3つの拡張ISO 8601日付形式のいずれかであり、時間はありません。 最初の2つは±YYYY-MM-DD(年、月、日)と±YYYY-DDD(年、日)です。両方ともうるう日に特別なケーシングが必要です。これらは、これらの拡張RXによって個別に単純にマッチングされます。 (?<year>[+-]?\d{4,})-(?<month>\d\d)-(?<day>\d\d) (?<year>[+-]?\d{4,})-(?<doy>\d{3}) 3番目の入力形式は±YYYY-wWW-D(年、週、日)です。複雑なうるう週パターンのため、複雑なものです。 (?<year>-?\d{4,})-W(?<week>\d\d)-(?<dow>\d) 3つすべてを組み合わせた場合の基本的な、しかし不十分な妥当性チェックは、次のようになります。 [+-]?\d{4,}-((0\d|1[0-2])-([0-2]\d|3[01]) ↩ |([0-2]\d\d|3[0-5]\d|36[0-6]) ↩ |(W([0-4]\d|5[0-3])-[1-7])) 条件 うるう年予期的グレゴリオ暦のカレンダーでは、含まれているうるう日 …-02-29、したがって、それは長い366日で、それ故に…-366存在します。これは、序数が4で割り切れる年に発生しますが、400で割り切れる場合を除き、100で割り切れません。 このカレンダーにはゼロ年が存在し、うるう年です。 長い年のISO週のカレンダーでは、1つの「という用語ができた、第53週が含まうるう週を」。これは、1月1日が木曜日であるすべての年に発生し、さらに水曜日であるすべてのうるう年に発生します。通常、5年または6年ごとに、一見不規則なパターンで発生することが判明しています。 年は少なくとも4桁です。10桁を超える年は、宇宙の年齢(約140億年)に十分近いため、サポートする必要はありません。先頭のプラス記号はオプションですが、実際の標準では、4桁を超える年数は必須であることを示しています。 部分的な日付または切り捨てられた日付、つまり日精度未満の日付は受け入れられません。 日付表記の一部、たとえば月は、参照可能なグループと一致する必要はありません。 ルール これはコードゴルフです。実行されたコードのない最短の正規表現が優先されます。更新:再帰やバランスのとれたグループなどの機能を使用できますが、10倍の罰金が科せられ、その後文字数が乗算されます!これは、ハードコードゴルフの規則とは異なります。分割可能性の正規表現は7です。以前の回答が引き分けになります。 テストケース 有効なテスト 2015-08-10 2015-10-08 12015-08-10 -2015-08-10 +2015-08-10 0015-08-10 1582-10-10 2015-02-28 2016-02-29 2000-02-29 0000-02-29 -2000-02-29 -2016-02-29 200000-02-29 2016-366 2000-366 0000-366 -2016-366 …

1
カタンの開拓者-最長の道!
これは、カタンの開拓者の終盤ボードです。 バックグラウンド: 道路(長い棒の部分)と集落(および都市)は、小さな小屋によってレンダリングされます。次のスキームを使用して、これらのピースの配置をエンコードします。上から、道路を配置できる行の水平頂点とエッジがあります。次に、道路のみの列などがあります。赤にR、オレンジにO、青にBを使用し、_を使用しない場合、写真のボードは次のようにエンコードされます。 ________RR_R_ __R_ __RR_R_RRR_____R_ B___R _B_________B__OO_OOR_ B__B_R BB_BBB_____B____RR_R_ OBB_O OO__BB_BB__OOO_OO O_O_ _O_OOO_O_____ このようなボードが入力文字列になります。どんな手紙でも[A-Z]もプレーヤーの色を示すことができますが、最大4色(空を含む)があります。それ以外の場合、ボードは入植者の規則に従って有効であることが保証されます。 各色には、最大で2つの連続した道路網があり、他のプレイヤーの居住地/都市(頂点の建物)によって分割される場合と分割されない場合があります。サンプル画像の右側のオレンジ色の集落が赤い道路をバラバラにしているのを見てください。 各道路網には、少なくとも1つの集落があることが保証されています。 すべての集落と都市は、少なくとも 、最も近い他の集落/都市(あなたのものまたはそうでないもの)から 2つの端 1人のプレイヤーは、ゲームボード上に15の道路しか持てません。 カタン愛好家の場合:この問題の目的のために集落と都市の区別はないため、入力文字列では区別しません。 これはすべて、「入力」文字列を指定するためのものです。 最長の道: 入植者では、プレイヤーは「最長の道」を持つことで2つの勝利ポイントを獲得します。これは次のように定義されます:開始地点から終了地点までの最長の連続した単一の経路(道路で測定)。敵の集落または都市によって分割されない。特定の開始点から特定の終了点までのパスをトレースできる限り、サイクルは問題ありません。したがって、6本の道路と分岐する1本の道路のループは長さ7ですが、反対側の6本の道路ループから分岐する2本のループはまだ7の価値しかありません。 例のマップでは、右側の赤い道路は4の価値しかありません。ボードの右側のオレンジの集落によって彼が切り離されているためです(そのため、集落はまったく含まれません)。青には長さ13の道路があり、オレンジには長さ12の道路があります。赤の一番上の道路は、その隣の2つの単一道路に接続していないため、7の価値があります。 出力: 最長の道路(同点の場合は複数になる可能性があります)があり、その後に空白またはアンダースコアで区切られた道路があるすべてのプレイヤーは、その道路の長さのベース10でカウントされます。 したがって、サンプルボードの出力は次のようになります。 B 13 問題ステートメント: プログラムまたは関数を記述し、STDIN経由で、または関数への文字列引数として入力ボードを受け取ります。関数は、上記の出力を文字列として返すか、STDOUT(または最も近い代替)に出力します。オプションで、出力に単一の末尾の改行を含めることができます。 これはcode-golfで、最短のプログラムが勝ちます。もちろん、標準的な抜け穴は禁止されています。


2
43クインティオンの順列
次のように、ルービックキューブをネットとして表すことができます(解決した場合)。 WWW WWW WWW GGGRRRBBBOOO GGGRRRBBBOOO GGGRRRBBBOOO YYY YYY YYY 各文字は対応する色を表します(W白、G緑など) 示された正確があることが43 、252 、003 、274 、489 、856 、00043、252、003、274、489、856、00043,252,003,274,489,856,000(〜434343京)異なる順列がルービックキューブがでできること。 あなたの仕事は、間の整数取ることである111と43 、252 、003 、274 、489 、856 、00043、252、003、274、489、856、00043,252,003,274,489,856,000上に示したように、対応する順列及び出力。順列の順序を選択することもできますが、使用可能なアルゴリズムを表示して、可能な入力ごとに一意の正しい順列を生成する必要があります。 無効な順列規則 から撮影 このページ ルービックキューブの中央の正方形は回転できないため、最初に、各3x3面の中心は同じである必要があります。キューブ全体を回転させて、顔の表示位置を変更できますが、これはキューブのネットには影響しません。 各順列には、その順列に到達するスワップの数のパリティに基づいてパリティがあると言うと、 各コーナーピースには3つの方向があります。正しい方向(0)、時計回り(1)、または反時計回り(2)にすることができます。角の向きの合計は常に3で割り切れるままです ルービックキューブの各法定回転は常に偶数のエッジを反転させるため、1つのピースだけが間違った方向を向くことはありません。 すべてのコーナーとエッジの順列を考慮すると、全体的なパリティは偶数である必要があります。つまり、各法定移動は常に偶数のスワップに相当するものを実行します(方向を無視) たとえば、次の3つのネットは無効な出力です。 WWW WWW WWW GGGWWWBBBOOO GGGRRRBBBOOO GGGRRRBBBOOO YYY YYY YYY (Too many whites/not enough reds) WRW WRW …

30
「良い」と「悪い」を入れ替える
チャレンジの説明: ユーザーに入力を求めるプログラムを作成します。ユーザーはGoodまたはを入力しBadます。他の入力をサポートする必要はありません。ユーザーがを入力した場合Good、印刷(Badおよびその逆)(標準出力など)が行われます。 ノート: 1)他の2つの単語のペアは使用できません。 2)あなたのプログラムは、一度尋ねて印刷するだけです。 3)プロンプト文字列を表示する必要はありません。 4)出力は、何らかの方法で入力から分離して表示される必要があります。 5)値を受け入れて結果を返す関数は許可されません。ユーザーはプログラムと対話する必要があります。 幸運を!

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