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

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

14
課題の配列#2:ネストされた配列を分離する
注:これは、一連のアレイ操作の課題の第2位です。前のチャレンジについては、ここをクリックしてください。 ネストされたリストの分離 ネストされたリスト内の値を分離するには、フラット化してから、各値をラップして、以前と同じネストされた深さになるようにします。 つまり、このリストは次のとおりです。 [1, [2, 3], [4, 4, [5, 2], 1]] になるでしょう: [1, [2], [3], [4], [4], [[5]], [[2]], [1]] チャレンジ あなたの仕事は、(あなたの言語の制限内で)正の整数のネストされたリストを取り、この分離操作を実行するプログラムを書くことです。 リストを引数として受け取る関数、またはI / Oを実行する完全なプログラムを送信できます。 これはcode-golfであるため、最短の送信(バイト単位)が勝ちです!* *標準的なゴルフの抜け穴は禁止されています。あなたはドリルを知っています。 テストケース 入力リストには、言語の標準整数サイズの整数のみが含まれます。言語の制約が競合するのを防ぐため、値は10を超える深さでネストされません。 入力に空のサブリストがないと仮定することができます。たとえば- [[5, []]]は与えられません。ただし、メインリストは空の場合があります。 [] -> [] [[1, 2]] -> [[1], [2]] [3, [4, 5]] -> [3, [4], [5]] [3, [3, …

30
何かキーを押すと続行します
あなたの仕事は、次のテキストを表示するプログラムを作成することで、ユーザーがキーを押すのを待つが(それはのようなキーを無視しても大丈夫ですctrl、alt、caps lockキーは好きなように、など、限りletters、numbers、symbols、とenter無視されていない)を、その後、プログラムを終了します。 Press any key to continue... 末尾の改行が許可されます。プログラムは、キーが押された直後に終了する必要があります。また、プログラムはかなり移植可能でなければなりません(つまり、OS固有のヘッダーやモジュールがなく、IDEの外部で実行されるなど)。 末尾の改行が避けられない場合を除き、プロンプトは上記のとおりでなければなりません。 これはcode-golfであるため、バイト単位の最短回答が優先されます。これは私の最初のコードゴルフの質問でもあるので、PPCGのルールがわからない場合は謝罪します。
36 code-golf 

11
xkcdを表示する
xkcdはみんなのお気に入りのウェブコミックであり、あなたは私たち全員にもう少しユーモアをもたらすプログラムを書くことになります。 この課題の目的は、入力として数値を受け取り、そのxkcdとそのタイトルテキスト(マウスオーバーテキスト)を表示するプログラムを作成することです。 入力 プログラムは、入力として正の整数(有効なコミックが存在する必要はありません)を受け取り、そのxkcdを表示します。たとえば、1500の入力は、xkcd.com / 1500でコミック「Upside-Down Map」を表示します。そして、タイトルテキストをコンソールに印刷するか、画像とともに表示します。 Due to their proximity across the channel, there's long been tension between North Korea and the United Kingdom of Great Britain and Southern Ireland. テストケース2、n = 859の場合: Brains aside, I wonder how many poorly-written xkcd.com-parsing scripts will break on this title (or ;;"''{<<[' …

24
複素数2進数
正整数からガウス整数への単純な全射マッピングを作成してみましょう。ガウス整数は、実数部と虚数部が整数である複素数です。 たとえば4538、正の整数が与えられた場合、先頭に0'を付けずにバイナリで表現します。 4538 base 10 = 1000110111010 base 2 後続0のを削除します。 100011011101 1つ以上0のすべての実行を単一のものに置き換えます+。 1+11+111+1 すべて1のをで置き換えますi: i+ii+iii+i 結果の複雑な式を評価し、単純化されたガウス整数を出力します。 i+ii+iii+i = i+i*i+i*i*i+i = 2i+i^2+i^3 = 2i+(-1)+(-i) = -1+i 出力は、従来の数学的な方法で表現することも、実数部と複素数部に2つの個別の整数として与えることもできます。この4538例では、次のいずれでも問題ありません。 -1+i i-1 -1+1i (-1, 1) -1 1 -1\n1 以下のような入力の場合29、Mathyさんは、次のような出力フォーマットされた0、0iまたは0+0iすべての罰金です。 それがあなたの言語にとってより自然であれば、j代わりに(または他の何か)を使用しても問題ありませんi。 バイト単位の最短コードが優先されます。

14
無限の言葉を見つけよう!
(注:これは、以前の課題Find the Swirling Wordsから派生したものです!) Infinity Wordの定義: アルファベット(AZ)上の無限大単語のすべての文字を曲線でつなぐと、下の図のように無限大記号∞が得られます。 すべての偶数接続がダウンしていなければならず、すべての奇数接続がアップしていなければなりません。 大文字/小文字を無視するか、すべてを大文字に変換するか、すべて小文字に変換/変換することができます。 入力単語は、A〜Zのアルファベット範囲の文字のみで、スペース、句読点、記号は使用できません。 各単語は正確に5文字でなければなりません。5文字以上または5文字未満の単語は無効です。 単語に二重連続文字がある場合、「FLOOD」や「QUEEN」のように、単語は無効です。 すべての無限語は同じ文字で始まり、同じ文字で終わります。 ここにいくつかの例があります: 仕事: 標準入力から単語を取得し、Infinity Wordかどうかを出力する完全なプログラムまたは関数を作成します。出力はtrue / false、1 / 0、1 / Nullなどです。 テストケース: Infinity Words: ALPHA, EAGLE, HARSH, NINON, PINUP, RULER, THEFT, WIDOW NOT Infinity Words: CUBIC, ERASE, FLUFF, LABEL, MODEM, RADAR, RIVER, SWISS, TRUST, KNEES, QUEEN, GROOVE, ONLY, …
36 code-golf  string 

14
グレーコードの増分
前書き A グレイコード番号は1ビットだけではなく、ビットの可変量を切り替えるだけインクリメントされたバイナリ表現に対する代替です。以下に、10進数および2進数に対応するいくつかのグレーコードを示します。 decimal | binary | gray ------------------------- 0 | 0 | 0 ------------------------- 1 | 1 | 1 ------------------------- 2 | 10 | 11 ------------------------- 3 | 11 | 10 ------------------------- 4 | 100 | 110 ------------------------- 5 | 101 | 111 ------------------------- 6 | 110 | 101 …

30
コードラダー、警官
注:このチャレンジは終了しました。提出はまだ歓迎されていますが、勝つことはできません。 これは警官のスレッドです。強盗のスレッドはここに行きます。 整数を出力するコードを記述します1。(選択した)単一の文字を追加、削除、または置換する場合、コードは整数を出力する必要があります2。さらに同じ文字(同じ文字または別の文字)を変更すると、コードが出力されます3。できる限りこのように続けますが、最大10までです。デフォルトの出力形式ans = 1は受け入れられます。STDERR(または同等のもの)への出力は無視できます。 言語、初期コードのバイト数、動作する整数の数、および初期コードのオプションの文字数を明らかにする必要があります。注:キャラクターを公開する必要はありませんが、キャラクターを公開すると、同じ位置で同じキャラクターを使用する必要があるため、強盗にとって難しくなる可能性があることに注意してください。表示されない文字(たとえば、アンダースコア)を示すために使用する文字を選択できますが、これを必ず指定してください。 警官は、1週間後にクラックのないコードを提供し、提出を「SAFE」と呼ぶことができます。勝った提出物は、番号10を生成する最短の無亀裂の提出物になります。亀裂のない提出物が10を印刷できない場合、9を生成する最短のコードが勝ちます。強盗はあなたと同じ変更を行う必要がなく、正確なコードを再現する必要がないことに注意してください(すべてのキャラクターを公開しない限り)。出力のみを再現する必要があります。 11月24日以降に投稿された投稿は歓迎されますが、勝ちの資格はありません(強盗の数が減る可能性が高いため)。 サンプル投稿: 次の投稿は言語MyLangでの投稿で、長さは9バイトで、数字1〜8で機能します。 MyLang、9バイト、8桁の数字 この投稿は1〜8で機能します。公開されていない文字はアンダースコア:で示されます_。 abc____i リーダーボード 免責事項:リーダーボードはテストされていないため、クラックされていない提出物がリストに表示されない場合があります。 <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script><style>table th,table td{padding: 5px;}th{text-align: left;}.score{text-align: right;}table a{display: block;}.main{float: left;margin-right: 30px;}.main h3,.main div{margin: 5px;}.message{font-style: italic;}#api_error{color: red;font-weight: bold;margin: 5px;}</style> <script>QUESTION_ID=99546;var safe_list=[];var uncracked_list=[];var n=0;var bycreation=function(x,y){return (x[0][0]<y[0][0])-(x[0][0]>y[0][0]);};var byscore=function(x,y){return (x[0][1]>y[0][1])-(x[0][1]<y[0][1]);};function u(l,o){jQuery(l[1]).empty();l[0].sort(o);for(var i=0;i<l[0].length;i++) l[0][i][1].appendTo(l[1]);if(l[0].length==0) jQuery('<tr><td colspan="3" class="message">none yet.</td></tr>').appendTo(l[1]);}function m(s){if('error_message' in …

23
ヤギを数えて眠る
一部の人々は眠りにつくために羊を数えます。その他はヤギを数えます。 正の整数Nを取り込んで、N-1個の目覚めたヤギに続いて1個の眠っているヤギを出力するプログラムまたは関数を作成します。まるで誰かがN個のヤギを数え、最後に眠ったのです。 覚醒したヤギは次のようになります。 \ ___/o> -(___)" '' '' 眠っているヤギは次のようになります。 \ ___/-> ,(___)" `` `` それらは、隣接するヤギのあごひげと尾の間に1つのスペースで連結されています。 \ \ \ ___/o> ___/o> ___/-> -(___)" -(___)" ,(___)" '' '' '' '' `` `` 出力には、末尾のスペースと単一の末尾の改行を含めることができます。 バイト単位の最短コードが優先されます。 例 N = 1: \ ___/-> ,(___)" `` `` N = 2: \ \ ___/o> ___/-> -(___)" ,(___)" …

30
EvenSt-ringコード-ゴル!f
「偶数文字列」は、文字のASCII値のパリティが常に交互になっている任意の文字列です。たとえば、文字EvenSt-ring$!のASCII値は次のとおりであるため、文字列は偶数文字列です。 69 118 101 110 83 116 45 114 105 110 103 36 33 そして、これらの数字のパリティは次のとおりです。 Odd Even Odd Even Odd Even Odd Even Odd Even Odd Even Odd 全体が交互になっています。ただし、ASCII値は次のとおりであるため、次のような文字列Hello world!は偶数文字列ではありません。 72 101 108 108 111 32 87 111 114 108 100 33 パリティは次のとおりです。 Even Odd Even Even Odd Even Odd …
36 code-golf  string 

13
アスキーアートの古くからの友人の写真
この写真があなたになじみのあるものであることを願っています。 パックマンがパワーピルを食べた後の、「脆弱な」状態のパックマンの幽霊の1つです。 チャレンジ ASCIIアートを使用して、小さなフレームに幽霊を描きます。通常のスケール(これについては後ほど説明します)では、上の画像の各正方形は1文字に対応し、フレームは上下に1文字の間隔があり、ゴーストの左右に2文字の間隔があります。 : #################### # # # #### # # ######## # # ########## # # ############ # # ############ # # ### ## ### # # #### ## #### # # ############## # # ############## # # ## ## ## ## # # # ## ## ## …

19
チェビシェフ回転
各セルに整数座標がある通常のグリッドを考えてみましょう。セルを(正方形の)「リング」にグループ化できます。各リングのセルは、原点からのチェビシェフ距離(またはチェスボード距離)が同じです。あなたの仕事は、そのようなセル座標を取り、そのセルをリング内で反時計回りに1つの位置だけ回転させることです。これにより、次のマッピングが実装されます。 したがって、たとえば、入力が(3, -2)出力の場合は(3, -1)。これ(0, 0)は、それ自体にマップする必要がある唯一の入力であることに注意してください。 ルール I / O形式はかなり柔軟です。2つの個別の数字、ペア/リスト/配列/数字のタプル、単一の複素数、2つの数字を含む文字列などを使用できます。 あなたはそれを仮定するかもしれません-128 < x,y < 128。 プログラムまたは関数を作成し、入力を受け取り出力を提供する当社の標準的な方法を使用できます。 任意のプログラミング言語を使用できますが、これらの抜け穴はデフォルトでは禁止されています。 これはcode-golfであるため、バイト単位で測定された最短の有効な回答が勝ちます。 テストケース (0, 0) => (0, 0) (1, 0) => (1, 1) (1, 1) => (0, 1) (0, 1) => (-1, 1) (-1, 1) => (-1, 0) (-1, 0) => (-1, -1) (-1, -1) …

14
トイレットペーパーの謎
今日、非常に実用的な問題を解決する必要があります。トイレットペーパーのロールに一定の枚数のシートを置くために、いくつのループが必要ですか。いくつかの事実を見てみましょう。 裸のトイレットペーパーシリンダーの直径は3.8cmです トイレットペーパー1枚の長さは10cmです。 1枚のトイレットペーパーの厚さは1mmです。 シリンダーを最初に巻き付ける前のシリンダーの円周は3.8 * piです。シートを円柱に巻き付けるたびに、半径が.1ずつ増加するため、円周は.2 * PIずつ増加します。この情報を使用して、n枚のトイレットペーパーを収めるために必要なループの数を調べます。(注:少なくとも3.14159と同じ精度のPiの近似値を使用してください)。 テストケース: n = 1: 10 /(3.8 * pi)= .838ループ n = 2: (完全なループをいくつ作成できますか?)1つの完全なループ= 3.8 * pi = 11.938。 (最初のループの後にどれくらい残っていますか?)20-11.938 = 8.062 (残りの部分はどのくらいの2番目のループを作成しますか?)8.062 /(4 * pi)= .642ループ 回答:1.642ループ n = 3: 1番目の完全ループ= 3.8 * pi = 11.938、2番目の完全ループ= 4 * pi = 12.566 …

20
カーマイケル関数を計算する
タスクの説明 数論では、カーマイケル関数 λは正の整数かかり N戻る以上の正の整数kのようにk個の各整数の乗互いに素に、nは 1に等しいモジュロNを。 正の整数nが与えられた場合、解はλ(n)を計算する必要があります。バイト単位の最短コードが優先されます。 プログラムは理論的には任意の大きな入力に対して機能するはずですが、効率的である必要はありません。 ヒント すべてのλ(n)のシーケンスはOEIS A002322です。 未実装のPython実装は次のようになります from fractions import gcd def carmichael(n): coprimes = [x for x in range(1, n) if gcd(x, n) == 1] k = 1 while not all(pow(x, k, n) == 1 for x in coprimes): k += 1 return k (Pythonでは、pow(A, …

1
「グリッドを埋める」問題
単純なルールでありながら、自明でないアルゴリズムによる課題。:-) 仕事 スペースで区切られた整数の形式で入力を取得します。 N A B S ここで、Nは、AとBの間の一意の数値(整数)で満たされた2D正方行列の辺の長さです。この行列の各行と列の合計は常に同じです:S(言い換えると、行列は半魔法の正方形です)。 注意: すべての数値は正です。例外はAであり、0の場合があります。 例 ために 3 1 10000 2015 有効な解決策は ために 8 1 300 500 有効な解決策は 出力 出力はASCIIテーブルである必要があります。上記の最初の例の例: 384 159 1472 1174 499 342 457 1357 201 スペースで埋められた右揃えの整数。各列の幅は、その列の最大の整数の幅です。 得点 これはcode-golfであるため、バイト単位の最短コードが優先されます。標準的な抜け穴が適用されます(特に、この問題を解決するためのビルトインについて)。間違った入力や不可能な入力(負の数を含む)を気にする必要はありません。上記の2番目の例の回答(必須)にサンプル出力を提供してください。
36 code-golf  math  grid 

27
メトロノームの構築
前書き 数日前、何かのためにメトロノームが必要でした。利用できるものがなかったため、App Storeからアプリをダウンロードしました。アプリのサイズは71 MBでした!!! 三目並べの作成に71 MB ...?! それで、コードゴルフが私の頭に浮かびました。 チャレンジ サウンドを出力するコードをゴルフします。どんな音なのかはまったく無関係です。必要に応じてサウンドファイルを作成します...しかし、システムビープ音も同様に機能します。(ここに私が作成したサウンドがあります...特別なものはありません。) 入力:メトロノームが出力する1分あたりの拍数。 例 これは非ゴルフJavaバージョンです!タスクを表示するだけです。 public class Metronome { public static void main(String[] args) throws InterruptedException { int bpm = Integer.valueOf(args[0]); int interval = 60000 / bpm; while(true) { java.awt.Toolkit.getDefaultToolkit().beep(); // or start playing the sound Thread.sleep(interval); System.out.println("Beep!"); } } } ルール …
36 code-golf  music  audio 

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