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

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

4
私の好きなチームは今でもフットボールチャンピオンになれますか?
最大で中程度に成功するフットボールBEチームのファンとして、シーズンの終わりに向けて、私のお気に入りのチームがまだチャンピオンになる可能性があるかどうか疑問に思います。この課題におけるあなたの仕事は、私のためにその質問に答えることです。 入力 現在のテーブル、残りの対戦のリスト、関心のあるチームの現在のポジションの3つの入力を受け取ります。 入力1:現在のテーブル、数字のシーケンスがされた私番目の数は、チームによって得られるポイントです私はこれまで。たとえば、入力 [93, 86, 78, 76, 75]は次の表をエンコードします(最後の列のみが重要です)。 入力2:残りの一致。各タプル(i、j)がチームiとjの間の残りの一致を表すタプルのシーケンス。上記の例では、2番目の入力は[(1,2), (4,3), (2,3), (3,2), (1,2)]、残りの一致が次のとおりであることを意味します。 Chelsea vs Tottenham, Liverpool vs Man. City, Tottenham vs Man. City, Man. City vs Tottenham, Chelsea vs Tottenham 入力3:関心のあるチームの現在の位置。たとえば2、上記の例のの入力は、トッテナムがまだチャンピオンになることができるかどうかを知りたいことを意味します。 出力 フォームの残りの一致ごとに( i、j)のに、3つの結果が考えられます。 チームiが勝利:チームiが獲得 3ポイント、チームjが0ポイント チームjが勝利:チームiが獲得 0ポイント、チームjは3ポイントを獲得 抽選:チームiとjの両方が1ポイントを獲得 残りのすべてのゲームに結果があり、最後に3番目の入力で指定されたチームよりも多くのポイントが他のチームにない場合は、真の値を出力する必要があります。それ以外の場合は、偽の値を出力します。 例:上記のセクションからの例示的な入力を考えます。 入力1 = [93, 86, 78, 76, 75]、入力2 …

10
私のサフィックスはどのタイプですか?
はじめに そのため、サフィックスソーティングアルゴリズムの研究、手作業およびコードによる新しいアイデアの評価に再び時間を費やしてきました。しかし、私はいつも自分のサフィックスのタイプを覚えるのに苦労しています!私のサフィックスのタイプを教えていただけますか? 左端何? 多くのサフィックスソートアルゴリズム(SAIS、KA、私自身のdaware)は、サフィックスをさまざまなタイプにグループ化してソートします。SタイプとLタイプの2つの基本タイプがあります。Sタイプのサフィックスは、次のサフィックスよりも辞書順で小さい(S小さい)接尾辞であり、それが辞書順で大きい場合(Lアーガー)はLタイプです。左端のS型(LMS型)だけのことである:A S型が付け加えているサフィックスL型接尾辞。 これらのLMSタイプのサフィックスの特別な点は、一度ソートすると、他のすべてのサフィックスを線形時間でソートできることです。すごくないですか? チャレンジ 文字列が指定された場合、その文字列内の他のどの文字よりも小さい(たとえば、nullバイトよりも小さい)特殊文字で終了すると想定します。各サフィックスのタイプ対応する文字を出力します。 どのタイプにどのcharを使用するかは自由に選択できますが、すべて印刷可能である限り()は好きL, S and *です。L-, S- and LMS-type0x20 - 0x7E 例 文字列mmiissiissiippi出力がある場合(を使用する場合L, S and *): LL*SLL*SLL*SLLL たとえば、1つ目Lは、mmiissiissiippi$辞書式にmiissiissiippi$($追加された最小文字を表す)よりも大きいという事実によるものです。 L - mmiissiissiippi$ > miissiissiippi$ L - miissiissiippi$ > iissiissiippi$ * - iissiissiippi$ < issiissiippi and preceeded by L S - issiissiippi$ < ssiissiippi$ L - …

2
フォンコッホ予想
数学者フォン・コッホの有名なスノーフレークでご存知かもしれません。しかし、彼はもっと興味深いコンピュータサイエンスの問題を抱えています。確かに、この推測を見てみましょう: nノード(したがってn-1エッジ)を持つツリーを指定します。ノードを列挙するための方法を見つける1までnのエッジ、したがって、およびを1するn-1各エッジのためにそのようなAのようにk、そのノード番号の差が等しいですk。これは常に可能であるという推測です。 これを完全に明確にする例を次に示します。 あなたのタスク あなたのコードは入力としてツリーを受け取り、あなたはあなたが望むフォーマットを取ることができますが、テストケースのために私はそれらの弧とそれらのノードのリストによってツリーを提供します。 たとえば、次の図はツリーの入力です。 [a,b,c,d,e,f,g] d -> a a -> b a -> g b -> c b -> e e -> f コードは、ノードとエッジに番号が付けられたツリーを返す必要があります。よりグラフィカルな出力を返すことができますが、テストケースにこの種の出力を提供します。 [a7,b3,c6,d1,e5,f4,g2] d -> a 6 a -> b 4 a -> g 5 b -> c 3 b -> e 2 e -> f …

5
ユークリッドアルゴリズムを再度可視化する
仕事 2つの正の整数を与える: 2つの整数で指定された寸法で長方形を描画します。 スペースがなくなるまでステップ3を繰り返します。 (残りの)長方形の3つの辺に接する最大の正方形を描画して塗りつぶします。 結果の長方形を出力します。 例 たとえば、入力は6and 10です。 サイズ6 x 10の中空の長方形を描画します。 xxxxxxxxxx xxxxxxxxxx xxxxxxxxxx xxxxxxxxxx xxxxxxxxxx xxxxxxxxxx 繰り返し正方形を埋めた後、これは私たちが得るものです: aaaaaabbbb aaaaaabbbb aaaaaabbbb aaaaaabbbb aaaaaaccdd aaaaaaccdd 4つの正方形はここにある(a、b、c、d)、辺の長さとそれぞれ6、4、2、2それぞれ。 ルールと自由 正方形ごとに異なる文字を使用する必要があります。 サポートされる文字がすべて印刷可能な文字であり、少なくともサポートされる文字がある限り、サポートする文字を選択できます10。 上記のステップ3の各反復では、2つの選択肢があります(最後の反復では選択肢が1つしかない場合を除く)。どちらの選択も有効です。 必要な正方形の数は、サポートする文字の数を超えることはありません。 正方形には、サポートする文字を任意の順序で入力できます。 テストケース 入力: 6, 10 出力: aaaaaabbbb aaaaaabbbb aaaaaabbbb aaaaaabbbb aaaaaaccdd aaaaaaccdd または aaaaaaccdd aaaaaaccdd aaaaaabbbb aaaaaabbbb aaaaaabbbb aaaaaabbbb …

4
Xはスポットをマークします–印刷ジョブ
2つの数値を指定して、指定された場所に「X」が付いたページを印刷します(±10%)。 数字は割合やページの印刷領域の大きさの画分、例えばいずれかでなければならない[25,75]か、["15%","0%"]または[0.33,1]。マージンを考慮する必要はありません。幅と高さ、そして角が原点であることを忘れないでください。 もちろん、プリンターが接続されていると想定することもでき、仮想プリンターもカウントされます。実際、このチャレンジを始める前に、PDFプリンターをデフォルトのプリンターとして設定することをお勧めします。 印刷可能なファイル(PDFなど)を作成して仮想プリンターに送信すると、結果のPDFが作成されますが、最終的なPDFを直接作成することはできません。これは適切な印刷ジョブでなければなりません。 可能であれば、結果の写真、スキャン、スクリーンショット、またはオンラインドキュメントへのリンクを含めてください。ImgurはPDFを受け入れることに注意してください。 もちろん、想定されたフォントと用紙サイズで改行とスペースを出力するのではなく、実際にXを配置すると、より多くの投票が得られます。 例 入力の高さ75%、幅25%の場合、左上から次のドキュメントを印刷します。

5
ユーザーのSEレピュテーションを見つける
チャレンジ SEユーザーのIDを指定して、ユーザーがサインアップしたすべてのStack Exchangeネットワーク全体からの評判の合計を出力します。 ルール ユーザーのサイトでの評判が101以下の場合、合計で0としてカウントします。 エリア51の担当者や非表示のコミュニティはカウントしないでください。 URL短縮文字は許可されていません。 例 変更の予定 ユーザー3244989(ベータ崩壊) 14141 ユーザー918086(デニス) 204892 ユーザー11683(Jon Skeet) 1029180 勝利 バイト単位の最短コードが優先されます。

1
入力と出力を備えた最短のpython A + Bプログラム
私の時間を浪費していると言う人もいるかもしれませんが、この仕事は500日以上の間私に平和を与えません。2つの数値を入力として受け取り、それらの合計を表示するプログラムをPython 3.xで作成する必要があります。番号は次の形式で示されます。 a b テストケースの例: 100 500 -> 600 3 4 -> 7 コードの長さは、式max(スペース、タブ、改行を含まないコード長、コード長/ 4)で計算されます。私が知っているソリューションは2つだけで、それぞれの長さは36文字です。 print(sum(map(int, input().split()))) そして: print(eval(input().replace(' ', '+'))) また、長さが34シンボルのソリューションが存在することも知っています。このウェブサイトで確認できます。
10 code-golf  tips  python 

3
期間2の逆クイン
あなたの仕事は、独自のソースコードを逆に出力するプログラムを書くことです。ただし、逆のコードを実行すると、正しい方向を向いてソースコードが出力されます。 例 あなたのプログラムはだとしましょうabc。実行すると、が出力されますcba。cba実行すると、が出力されますabc。 ルール プログラムは、適切なクインのすべてのルールに従う必要があります(ソースコードの出力を除く)。パリンドロームは許可されていません。 ランダムなメモ:私はこれを認識していますが、変換されたコードは同じプロパティを持っている必要があるため、この課題は異なると思います。
10 code-golf  quine 

4
渦を作りましょう!
今日のあなたの使命は、単一のパラメーターを指定して渦を作成することです。 このパラメーターは、各腕の長さを文字数で決定します。 各腕の各「レイヤー」には、最後の腕よりも1つ多い文字が含まれています。 アームの長さが与えられた場合の渦の様子は次のとおりです。 0: # 1: # ### # 2: # # # ### # # # 3: ## # # # ### # # # ## 4: # # ## # # # ### # # # ## # # 10: # # # # # #### # …

1
C#最初の1(右から左)の2進数
C#を使用して、数値のバイナリ表現で最初の1(右から左)のインデックスを見つけようとしています。たとえば、バイナリの100は次のとおりです。 0b1100100 最初の1は右から3番目の位置にあるため、3になります。 234は2を生成し、0は0を生成します。 これが私の現在の解決策です: k < 1 ? 0 :(int)Math.Log(k & -k, 2) + 1; これを短くする方法はありますか?
10 code-golf  tips  binary  c# 

9
はいの通訳を作ろう!
はい、いくつかのスペースで区切られた命令を持つスタックベースの言語です: yes: Push 1 to the stack no: Push 0 to the stack what: Push the input to the stack (input is taken at the start of program execution and is the same for the whole execution) sure: Increment the last item in the stack nah: Decrement the last item …

2
ユニットを派生させる
チャレンジ SI基本単位のリスト、方程式のリスト、およびターゲットを指定すると、基本単位のみを使用してターゲットの単位を導出する必要があります。 派生ユニット ウィキペディアから: 国際単位系(SI)は、他のすべてのSI測定単位が導出される7つの基本単位のセットを指定します。これらの他の単位(SI派生単位)はそれぞれ無次元であるか、1つ以上の基本単位の累乗の積として表すことができます。 たとえば、SIから派生した面積の単位は平方メートル(m 2)であり、SIから派生した密度の単位は1立方メートルあたりのキログラム(kg / m 3またはkg m -3)です。 7つのSI基本単位は次のとおりです。 アンペア、A カンデラ、CD ケルビン、K キログラム、kg メートル、メートル モル、モル 第二に、s 例 入力 基本単位: d [m] m [kg] t [s] 方程式: v = d/t a = v/t F = m*a E = F*d 目標: E 出力 E [kg*m*m/s/s] 入力 基本単位: G …

3
整数と発音可能な単語の間のマッピング
目的 このアイデアは、32ビット整数を最大9文字の発音可能な単語との間でマッピングするために必要なコードを提供することです。たとえば、シリアル番号を覚えやすくしたり、フォームに入力したりするのに役立ちます。 整数を対応する単語に変換する方法と、単語を対応する整数に変換する方法の両方が必要です。 ルール 整数と単語の間には1対1のマッピングが必要であり、32ビット整数のセット全体(つまり、0〜4294967295の整数)はマップ可能である必要があります。もちろん、すべての単語が意味を持つわけではありませんが、整数にマッピングされない単語を入力すると、動作が特定されない場合があります。 どの「発音可能な」単語のセットが意味を持ち、マッピングがどのように行われるかを正確に自由に決定できますが、単語は少なくとも次の規則に従う必要があります。 文字として使用できるのは、基本的な26文字(A ... Z)のみです。アクセント、大文字小文字などは、可能な組み合わせを拡張するために使用すべきではありません。 単語あたり最大9文字。 2つの子音(BCDFGHJKLMNPQRSTVWXZ-20の可能性)を隣同士に配置しないでください(それらは母音で囲まれている必要があります)。 2つの母音(AEIOUY-6の可能性)を隣同士に配置しないでください(子音で囲む必要があります)。 注:すべての単語をCVCVCVCVC(C子音およびV母音として)構成する最も単純なスキームでは、4147200000の組み合わせが得られ、32ビット整数には4294967296の可能な値があるため、十分ではありません。短い単語を許可するか、組み合わせも許可することによって、組み合わせの数を増やす必要がありVCVCVCVCVます。 他の標準ルールが適用され、標準の抜け穴は禁止されています。 入力/出力 送信ごとに、2つのコードを提供する必要があります。 引数/入力として整数を取り、対応する単語を返す/出力するもの 引数/入力として単語を取り、対応する整数を返す/出力するもの または、両方の操作を処理する単一のコードを送信することもできます。 入力として整数を指定すると、対応する単語を出力します 文字列を入力として与えると、対応する整数を出力します 当選条件 これはcode-golfで、バイト数が最も少ない(両方のコードを合計した場合、分離されたコードを選択するソリューションの場合)の方が勝ちます。

4
組み合わせのリストを繰り返しで貪欲に分割する
まず、いくつかの定義: とが与えられた場合n、マルチセットkのソートされたリストを検討してください。各マルチセットについて、繰り返しを使用して番号を選択します。k{0, 1, ..., n-1} たとえば、n=5およびの場合、次のようになりk=3ます。 [(0、0、0)、(0、0、1)、(0、0、2)、(0、0、3)、(0、0、4)、(0、1、1)、( 0、1、2)、(0、1、3)、(0、1、4)、(0、2、2)、(0、2、3)、(0、2、4)、(0、 3、3)、(0、3、4)、(0、4、4)、(1、1、1)、(1、1、2)、(1、1、3)、(1、1、 4)、(1、2、2)、(1、2、3)、(1、2、4)、(1、3、3)、(1、3、4)、(1、4、4) 、(2、2、2)、(2、2、3)、(2、2、4)、(2、3、3)、(2、3、4)、(2、4、4)、( 3、3、3)、(3、3、4)、(3、4、4)、(4、4、4)] 一部は一部のすべてのマルチセットの交差点の大きさは、少なくともある特性を有するマルチセットのリストですk-1。つまり、すべてのマルチセットを受け取り、それらを(マルチセットの交差を使用して)一度に交差させます。例[(1, 2, 2), (1, 2, 3), (1, 2, 4)]として、交差点のサイズが2であるパー​​ツはですが、[(1, 1, 3),(1, 2, 3),(1, 2, 4)]交差点のサイズが1であるため、そうではありません。 仕事 あなたのコードは2つの引数nを取る必要がありkます。次に、これらのマルチセットをソート順に貪欲に調べ、リストの一部を出力します。この場合n=5, k=3、正しいパーティション分割は次のとおりです。 (0, 0, 0), (0, 0, 1), (0, 0, 2), (0, 0, 3), (0, 0, 4) (0, 1, 1), (0, 1, …

16
16進数から2進数
(任意のサイズの)16進数を2進数に変換します。 入力 A POSITIVEの 16進数0x始まりインチ 有効な入力は常に次の正規表現に一致します:0x[0-9a-fA-F]+。入力が有効な16進数ではない場合、つまりこの正規表現に一致しない場合、出力はになります0。 出力 16進数が2進数に変換されます。 元のコードゴルフルールに勝ち、バイト数が最も少ない(bytes)。 例 IN: 0x12 OUT: 10010 IN: 0xFF OUT: 11111111 IN: 0XFF OUT: 0 IN: #0ac4 OUT: 0 IN: 0x00101011 OUT: 100000001000000010001 IN: 0x525600 OUT: 10100100101011000000000 IN: 0x58f70555118ec400 OUT: 101100011110111000001010101010100010001100011101100010000000000 IN: 0x6669795966AF3000 OUT: 110011001101001011110010101100101100110101011110011000000000000 IN: 0b018474 OUT: 0 IN: 9577383 OUT: 0 …

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