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

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

13
NPを実行する:最大のクリークを見つける
バックグラウンド これを書いている時点で、NPの問題対Pは、まだ未解決のですが、聞いたことがあるかもしれませんノルベルト・ブルム社の新しい紙、すでにされてP!= NP、その主張を証明誤っていると疑われる(しかし、我々が表示されます)。 この論文で議論する問題はクリーク問題です。少なくとも新聞記事でそれを読んでいるので、間違っている場合は修正してください。しかし、いずれにしても、次のバリエーションを解決するプログラムを書いてほしいです。 タスク たくさんの生徒がいる大きな学校があると仮定します。これらの各生徒には、この学校に何人かの友人がいます。生徒のクリークは、お互いのメンバーと友達である生徒だけから成るグループです。 あなたのプログラムは、入力として友人である学生のペアを受け取ります。この情報から、プログラムは最大のクリークのサイズを見つけなければなりません。学生は整数IDで識別されます。 数学用語を好む場合、これは、それぞれが2つのノードで識別される無向グラフのエッジを与えられることを意味します。 入力 入力は、正の整数ペアの空でないリストになります(例:)[[1,2],[2,5],[1,5]]。この入力は、たとえば、配列の配列、それぞれ2つの数値を含むテキスト行など、適切な形式で入力できます。 出力 予想される出力はn >= 2、最大のクリークのサイズである単一の数値です。上記の入力例で3は、すべての生徒(1、2および5)が互いに友達であるため、結果はになります。 テストケース [[1,2]] => 2 [[1,2],[3,1],[3,4]] => 2 [[1,2],[2,5],[1,5]] => 3 [[2,5],[2,3],[4,17],[1,3],[7,13],[5,3],[4,3],[4,1],[1,5],[5,4]] => 4 (the largest clique is [1,3,4,5]) [[15,1073],[23,764],[23,1073],[12,47],[47,15],[1073,764]] => 3 (the largest clique is [23,764,1073]) [[1296,316],[1650,316],[1296,1650],[1296,52],[1650,711],[711,316],[1650,52], [52,711],[1296,711],[52,316],[52,1565],[1565,1296],[1565,316],[1650,1565], [1296,138],[1565,138],[1565,711],[138,1650],[711,138],[138,144],[144,1860], [1296,1860],[1860,52],[711,1639]] => 6 (the largest clique is …

30
誰もGAU番号を知らない
GAU番号を紹介します GAU(1) = 1 GAU(2) = 1122 GAU(3) = 1122122333 GAU(4) = 11221223331223334444 GAU(6) = 11221223331223334444122333444455555122333444455555666666 ... GAU(10) = 11221223331223334444122333444455555122333444455555666666122333444455555666666777777712233344445555566666677777778888888812233344445555566666677777778888888899999999912233344445555566666677777778888888899999999910101010101010101010 このチャレンジはとても簡単です! 整数n> 0が与えられた場合、GAU(n)の桁数を見つけます 例 レッツ・メイクGAU(4) 私たちは(私たちは4に到達するまで)は、次の手順を取り、それらを連結 [1][122][122333][1223334444] すべての数字をその値と同じ回数だけ記述する必要がありますが、1から毎回カウントする必要があります 1から1までカウントする必要があるGAU(5)を作成してみましょう [1] 次に1から2(ただし、すべての数値をその値と同じ回数だけ繰り返します) [122] その後1から3 [122333] その後1から4 [1223334444] そして最後に1から5まで(GAU(5)を見つけたいのでこれが最後のステップです) [122333444455555] これらすべての手順を実行し、それらを連結すると 、結果はGAU(5)になります 11221223331223334444122333444455555 これらのGAU番号の桁数に関心があります。 テストケース 入力⟼出力 n ⟼ Length(GAU(n)) 1 ⟼ 1 …

23
フラクタル大聖堂
正の整数を指定すると、次の構造のn >= 1最初のn行が出力されます。 # # # ### # # # # # ## ## ##### # # # # # # # # # # ### # ## ## ## # ## ### ### ####### n目1インデックス付き列は、バイナリ表現であるnと最後の文字、コピーせずにミラーリング、#1の代わりに、および<space>すべての行を中心と0の代わりにします。 ASCIIアートとして出力する必要がありますが#、この例で使用する場所の代わりに非空白文字を使用できます。末尾の空白は許可され、末尾の改行は許可されます。出力は例のように見える必要があり、余分な先行空白や先行改行はありません。 ここでは、フラクタル大聖堂の最初の1023行を表示できます。 より大きなテストケースを生成するために、Pythonでの無制限のリファレンス実装を次に示します。

22
モジュラ乗法逆
あなたの仕事は、2つの整数を与え、モジュロbのモジュラ乗法逆関数が存在する場合、それaをb計算することです。 aモジュロのモジュラー逆数bは、cそのような数ですac ≡ 1 (mod b)。この番号はb、aとの任意のペアに対して一意のモジュロですb。それが唯一の最大公約数場合が存在aしてbいます1。 トピックに関する詳細情報が必要な場合は、モジュラー乗法的逆関数のWikipediaページを参照してください。 入出力 入力は、2つの整数または2つの整数のリストとして与えられます。プログラムは、単一の数、区間内にあるモジュラー乗法逆数0 < c < b、または逆数がないことを示す値のいずれかを出力する必要があります。値は、範囲内の数値を除く任意の値にすることができ(0,b)、例外でもあります。ただし、値は逆行列がない場合と同じである必要があります。 0 < a < b 想定できる ルール プログラムはある時点で終了し、各テストケースを60秒未満で解決する必要があります 標準的な抜け穴が適用されます テストケース 以下のテストケースは次の形式で提供されます。 a, b -> output 1, 2 -> 1 3, 6 -> Does not exist 7, 87 -> 25 25, 87 -> 7 2, 91 -> 46 …

22
私の後ろにサタンプライムをゲット!
サタンプライム 彼らは誰なの? 彼らはしているPrimes含む666 これらサタン-素数です:[46663,266677,666599,666683,616669] これらはありません。[462667,665669,36363631,555] プロット 6661より大きいすべての数字の後ろにはサタンプリムスがいます チャレンジ 整数n>6661が与えられた場合、サタンプライムを背後(または等しい)で、それ自体に最も近いものを見つけます。 例 Integerのn=30000背後には3つのSatan-Primes(SP)があります[6661, 16661, 26669]。 あなたのコード26669は、その後ろに最も近いものを返す必要があります テストケース 入力->出力 6662->6661 10000->6661 66697->66697 (a SP returns himself) 328765->326663 678987->676661 969696->966677 ルール Yorコードはn、あなたの言語の範囲内で動作するはずです。 これはcode-golfなので、バイト単位の最短回答が勝ちです!
22 code-golf  primes 

30
自分自身で配列を追加する
今日の課題は、配列を取得してチャンクに分割し、それらのチャンクを追加することです。 仕組みは次のとおりです。プログラムまたは関数には、整数の配列aとチャンクサイズが与えられますL。配列をsizeの配列に分割する必要があります。L配列の長さが割り切れないL場合は、均等に割り切れるように0を追加する必要があります。配列がチャンク化されると、すべてのチャンクが要素ごとに一緒に追加されます。結果の配列が出力されます。 あなたはL0より大きいと仮定することができ、それaは空ではありません。aの内容がポジティブであると仮定することはできません。 以下に例を示します。 [1,2,3,4,5,6,7,8], 3 => [1,2,3]+[4,5,6]+[7,8,0] => [1+4+7,2+5+8,3+6+0] => [12,15,9] テストケース: Array Length Output [1] 1 [1] [1] 3 [1,0,0] [0] 3 [0,0,0] [1,2] 3 [1,2,0] [1,2] 1 [3] [-1,1] 2 [-1,1] [-7,4,-12,1,5,-3,12,0,14,-2] 4 [12,-1,0,1] [1,2,3,4,5,6,7,8,9] 3 [12,15,18] これはcode-golfで、最少バイトが勝ちます!

27
差分リストを並べ替える
整数のリストの差分リストは、連続するメンバーのリストの差分です。 たとえば、 1, 3, 2 ,4 は 2, -1, 2 あなたのタスクは、入力として差分リストを取得し、元のリストがソートされた場合の差分リストの外観を出力することです。 たとえば、差分リスト 2, 1, -2, -1 リストを表す場合があります 2 4 5 3 2 ソートされるとき 2 2 3 4 5 の違いリストがあります 0 1 1 1 これはコードゴルフであるため、回答はバイト単位でスコアリングされ、バイト数が少ない方が優れています。

15
無限の力の塔
チャレンジ とてもシンプルで、入力が与えられxたら、無限のパワータワーを計算してください! x^x^x^x^x^x... あなたの数学愛好家にとって、これはx無限の四分割です。 次のことに注意してください。 x^x^x^x^x^x... = x^(x^(x^(x^(x...)))) != (((((x)^x)^x)^x)^x...) 驚いたことに、これに関連する「単純な」数学の挑戦はありませんでした!* 仮定 xう、常に収束します。 負の複素数を処理できる必要があります これはcode-golfなので、最低バイトが勝ちです! あなたの答えは、少なくとも小数点以下5桁まで正しいはずです 例 Input >> Output 1.4 >> 1.8866633062463325 1.414 >> 1.9980364085457847 [Square root of 2] >> 2 -1 >> -1 i >> 0.4382829367270323 + 0.3605924718713857i 1 >> 1 0.5 >> 0.641185744504986 0.333... >> 0.5478086216540975 1 …
22 code-golf  math 

5
コードGolfinator-3000
誰もが知っている、追加inator-3000の任意の名詞の最後には、それ道クーラーになります。しかし、他に何が単語をクールにすることができますか? 入力としてASCII文字列を指定すると、単語のクールさを出力します。 涼しさの計算 単語のクールさを計算するには、4つの要素があります。 言葉そのもの。基本スコアは、大文字の数に1000を掛けたものです。 終了番号。(例えばburninator-などの単語の末尾の番号3000)ベーススコアに加算され、しかし数が4つの以上の数字である場合、それらはあまりにも貪欲されていると数は無視されるべきです。 コネクタ。終了番号の前のスペースは1000を追加しますが、ハイフンは2000を追加しますが、他の記号、または記号がない場合は効果がありません。 接尾辞。単語がで終わる場合、ator最終スコアを2倍にします。で終わる場合inatorは、スコアを3倍にします。これらは大文字と小文字を区別しません。 したがって、たとえばBurninator-3000次のように計算できます。 1 Capital letter - Base Score: 1000 (1000(base) + 3000(number) + 2000(hyphen)) * 3(suffix) = 18000 テストケース Burninator-3000 -> 18000 Burnator3000 -> 8000 BurNinator 100 -> 9300 BuRnInAtOr-7253 -> 42759 burn -> 0 burn- -> 0 bUrn-1 -> 3001 inator-7 -> …
22 code-golf  string 

13
連続する整数を折りたたみます
関連:私がしなければならない数学の問題をいくつ教えてください! チャレンジ 厳密に正の厳密に昇順の整数リストLおよびLの整数3≤N≤長さが与えられた場合、長さ≥NのLの連続整数実行の中間整数を単一のダッシュで置き換え-ます。 ルール 水平方向の空白は関係ありません。 オプションで、言語のデフォルトのリスト形式のイントロデューサー、セパレーター、およびターミネーター文字を保持できます。以下のフォーマットの例を参照してください。 データ例 これらの例はすべてを使用していますL = 3 5 6 7 8 10 11 12 14 16 17 18 19 20 21 22 24。 N = 3 → 3 5 - 8 10 - 12 14 16 - 22 24 N = 4 → 3 5 - 8 …

12
どのくらい曇りですか?
チャレンジ 空の画像を指定すると、oktasで雲量を出力する必要があります。提供されるイメージはイメージファイル(タイプはユーザー次第)であり、出力はSTDOUTになります。 オクタス 気象学では、オクタは、気象観測所などの任意の場所での雲量を表すために使用される測定単位です。空の状態は、空の8分の何が雲で覆われているかによって推定され、0オクタ(完全に晴天)から8オクタ(完全に曇り)までの範囲です。 空は常に正午頃の写真になります(つまり、赤/夜空ではなく、青空)。 雲の色は、常に次のパターンに従う色になります。 #ABCDEF どこAB >= C0、CD >= C0そしてEF >= C0。 または、RGB: (A, B, C) どこA >= 192、B >= 192そしてC >= 192。 oktasに関連するカバレッジの割合は次のとおりです。 0% - 0 oktas 12.5% - 1 okta 25% - 2 oktas 37.5% - 3 oktas 50% - 4 oktas 62.5% - 5 oktas …

6
コトリンでのゴルフのヒント
Google がAndroid開発のKotlinの公式サポートを最近発表したことを考えると、この比較的新しいJVM言語の素晴らしいゴルフのヒントについてコミュニティに投票するのがタイムリーかもしれないと思いました。 Kotlinには、JVM兄弟の機能のユニークな組み合わせが含まれており、ゴルフに魅力的な可能性があります。 演算子のオーバーロード local、infix、およびstatic拡張関数 スマートキャスト Groovyスタイルのタイプセーフビルダー 型エイリアス 範囲 広範な機能コレクションパッケージ スクリプトのサポート それでは、Kotlinプログラムから最後の数バイトを圧縮するにはどうすればよいですか?回答ごとに1つのヒントをお願いします。
22 code-golf  tips 

20
それはスーパープライムですか?
バックグラウンド スーパープライムは、インデックスがすべて素数のリストでも素数である素数です。シーケンスは次のようになります。 3、5、11、17、31、41、59、67、83、109、127、157、179、191、... これは、OEISのシーケンスA006450です。 チャレンジ 正の整数を指定して、それがスーパープライムかどうかを判断します。 テストケース 2:偽 3:本当 4:偽 5:true 7:偽 11:true 13:偽 17:真 709:true 851:偽 991:真 得点 これはcode-golfであるため、各言語の最短の回答が優先されます。

12
ポールに色をつけて
あなたの仕事はポールをペイントすることであり、クライアントが4つの赤いセクションと3つの黄色のセクションでポールをペイントするように要求するとしましょう。次のように簡単に実行できます。 r y r y r y r 黄色と赤のストライプだけで。ここで、クライアントが2つの赤いセクション、2つの黄色のセクション、1つの緑のセクションでポールをペイントするように要求したとしましょう。ポールをペイントする方法はいくつかあります g y r y r y g r y r y r g y r y r y g r y r y r g g r y r y r g y r y r y g r y r …

29
隣接する複製を折りたたむ
チャレンジ 整数のリストを指定すると、隣接する等しいアイテムのすべてのペアを繰り返し削除した後、これらの整数のリストを返します。 同じ数の奇数長の実行がある場合、ペアの一部ではなく、そのうちの1つが残ることに注意してください。 例: [0, 0, 0, 1, 2, 4, 4, 2, 1, 1, 0] まず、あなたは削除する必要があり0, 0、4, 4および1, 1取得するには: [0, 1, 2, 2, 0] 今、あなたは削除する必要があります2, 2: [0, 1, 0] これが最終結果です。 テストケース []-> [] [1]-> [1] [1、1]-> [] [1、2]-> [1、2] [11、11、11]-> [11] [1、22、1]-> [1、22、1] [-31、46、-31、46]-> [-31、46、-31、46] [1、0、0、1]-> [] [5、3、10、10、5]-> [5、3、5] [5、3、3、3、5]-> …

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