タグ付けされた質問 「binary」

Binaryは、基数2の数体系です。このタグは、ベース2が関係する課題に使用します。

6
N基底の回文である数
負でない整数が指定された場合n >= 0、x_i >= 3完全にn異なるb基数の回文である整数のシーケンスを永久に出力します2 <= b <= x_i-2。 これは基本的にOEIS A126071の逆で、そのシーケンスのどのインデックスが値を持つかを出力しますn。b = x_i-1, x_i, x_i+1これらのベースの結果は常に同じであるため(値は常にパリンドロームであるか、常にそうでないか)、ベースを無視するように変更したため、少し異なります。また、オフセットが異なります。 x_i>= 3それぞれの結果の最初の項nがA037183になるように、数値に制限されています。 出力形式は柔軟ですが、数値は適切な方法で区切る必要があります。 例: n seq 0 3 4 6 11 19 47 53 79 103 137 139 149 163 167 ... 1 5 7 8 9 12 13 14 22 23 25 29 35 …
10 code-golf  sequence  base-conversion  palindrome  code-golf  array-manipulation  matrix  code-golf  string  ascii-art  code-golf  ascii-art  physics  code-golf  number  sequence  fibonacci  code-golf  ascii-art  packing  code-golf  string  hexadecimal  code-challenge  restricted-source  decision-problem  binary  code-golf  code-golf  code-golf  stack-exchange-api  code-golf  string  parsing  generation  data-structures  code-golf  kolmogorov-complexity  graphical-output  code-golf  array-manipulation  integer  generation  data-structures  code-golf  number  random  probability-theory  king-of-the-hill  java  minesweeper  code-golf  string  kolmogorov-complexity  animation  code-golf  string  code-golf  code-golf  quine  code-golf  internet  code-golf  arithmetic  base-conversion 

9
スーパーフォールディングナンバー
ここではすでに折りたたみ数を定義しています。 しかし、これからスーパーフォールディングナンバーを定義します。スーパーフォールディング数は、十分に折り畳まれると、最終的には2の累乗よりも1少ない数になります。フォールディングの方法は、フォールディング数の質問とは少し異なります。 フォールディングアルゴリズムは次のようになります。 バイナリ表現を取る 例:5882 1011011111010 3つのパーティションにそれをこぼした。前半、後半、中桁(奇数桁の場合) 101101 1 111010 中央の数字がゼロの場合、この数値は折りたたむことができません 後半を逆にして前半に重ね合わせる 010111 101101 桁を追加します 111212 結果に2がある場合、数値は折りたたむことができません。それ以外の場合、新しい数値は折りたたみアルゴリズムの結果です。 連続した1つの文字列に折りたたむことができる場合、その番号はスーパーフォールディング番号です。(すべての折りたたみ番号もスーパー折りたたみ番号です) あなたの仕事は、数値を取り込んで、その数値がスーパーフォールディング数であれば真の値を出力し、そうでなければ偽のコードを書くことです。プログラムの規模で採点されます。 例 5200 バイナリに変換: 1010001010000 半分に分割: 101000 1 010000 真ん中は1つなので、続けて半分を重ね合わせます。 000010 101000 それらを追加しました: 101010 2はないので、半分に分割し続けます。 101 010 折りたたみ: 010 101 111 結果は111(10進数で7)なので、これはスーパーフォールディング番号です。 テストケース 最初の100個のスーパーフォールディング番号は次のとおりです。 [1, 2, 3, 6, 7, 8, 10, 12, …

10
整数を指定して、そのレーベンシュタインコードを計算します
免責事項:レーベンシュタインのコーディングはレーベンシュタイン編集距離メトリックとはまったく無関係です。 <レーベンシュタインコードをここで計算する必要がある理由についての詳細な説明を挿入します。> コード レーベンシュタイン符号化は、バイナリコードを非負の整数に割り当てるシステムであり、この課題に関係のない確率で奇妙な特性を保持します。このコードをL(n)と表記します。ウィキペディアはこれを5段階のプロセスとして説明しています。 歩数変数Cを1に初期化します。 1コードの先頭に導くことなく、数値のバイナリ表現を記述します。 ましょMはステップ2に書き込まれたビットの数です。 Mが0でない場合は、Cをインクリメントし、ステップ2からMを新しい数として繰り返します。 C 1ビットとa 0をコードの先頭に書き込みます。 ただし、コードを再帰的に記述することもできます。 数値が0の場合、そのコードは0です。 1コードの先頭に導くことなく、数値のバイナリ表現を記述します。 ましょMはステップ2に書き込まれたビットの数です。 L(M)をコードの先頭に書き込みます。 1コードの先頭に少し書き込みます。 例を好む人のために、ここにL(87654321)の再帰的プロセスがあり、連結を示しています: チャレンジ 数値nを指定して、ビットストリングL(n)を適切な形式で出力するプログラムまたは関数を記述します(これには、上記のビットを持つ数値を返すことも含まれます)。標準の抜け穴は、いつものように禁止されています。 例 入力: 5 出力: 1110001 入力: 30 出力: 111100001110 入力: 87654321 出力: 111110000101001001110010111111110110001 入力: 0 出力: 0

3
I-Chingペアバイナリコンピューター
前書き I Chingは古代の占いテキストであり、最も古い中国の古典です。どうやら乱数を生成するクレロマンシーと呼ばれる一種の占いを使用しています。 周YIの基本単位である六角形(卦GUA)、6つの積層水平ライン(爻YAO)からなる図。各行は壊れているか切れていないかのどちらかです。Zhou yiの受信テキストには、64個の可能なヘキサグラムがすべて含まれています キング温シーケンス 32ペアにグループ化本64 hexagrams、。28組のペアについて、2番目のヘキサグラムは最初のヘキサグラムを上下逆にして作成します(つまり、180度回転)。このルールの例外は、回転後も同じである対称ヘキサグラムです。これらのパートナーは、各線を反転させることによって与えられます:ソリッドは壊れ、ソリッドは壊れます。 ▄▄▄▄▄▄▄ ▄▄▄ ▄▄▄ ▄▄▄ ▄▄▄ ▄▄▄▄▄▄▄ ▄▄▄ ▄▄▄ ▄▄▄▄▄▄▄ ▄▄▄ ▄▄▄ ▄▄▄ ▄▄▄ ▄▄▄▄▄▄▄ ▄▄▄ ▄▄▄ ▄▄▄▄▄▄▄ ▄▄▄ ▄▄▄ ▄▄▄▄▄▄▄ ▄▄▄▄▄▄▄ ▄▄▄ ▄▄▄ ▄▄▄▄▄▄▄ ▄▄▄▄▄▄▄ ▄▄▄ ▄▄▄ ▄▄▄ ▄▄▄ ▄▄▄ ▄▄▄ ▄▄▄ ▄▄▄ ▄▄▄▄▄▄▄ ▄▄▄ ▄▄▄ ▄▄▄ ▄▄▄ ▄▄▄▄▄▄▄ ▄▄▄ ▄▄▄ ▄▄▄ …

7
コードゴルフ:フェイリーシーケンス(I)
チャレンジ このタスクでは、整数N(10 ^ 5未満)が与えられ、次数NのFareyシーケンスが出力されます。 入力Nは1行で指定され、入力はEOFで終了します。 入力 4 3 1 2 出力 F4 = {0/1, 1/4, 1/3, 1/2, 2/3, 3/4, 1/1} F3 = {0/1, 1/3, 1/2, 2/3, 1/1} F1 = {0/1, 1/1} F2 = {0/1, 1/2, 1/1} 制約 入力数は10 ^ 6の値を超えません 任意の言語を使用できます 最短のソリューションが勝ちます!
10 code-golf  math  code-golf  math  code-golf  number  number-theory  code-golf  math  arithmetic  repeated-transformation  code-golf  geometry  popularity-contest  code-golf  code-golf  tips  haskell  math  fastest-algorithm  code-golf  combinatorics  code-golf  math  polynomials  rational-numbers  code-golf  code-golf  popularity-contest  javascript  code-golf  kolmogorov-complexity  code-golf  code-golf  math  combinatorics  permutations  code-challenge  restricted-source  random  array-manipulation  code-challenge  generation  code-golf  code-golf  ascii-art  arithmetic  division  code-challenge  number  code-golf  math  number  binary  code-golf  ascii-art  code-golf  interpreter  stack  code-golf  internet  networking  code-golf  math  code-golf  ascii-art  code-golf  math  sequence  code-golf  hello-world  restricted-source  code-golf  ascii-art  code-golf  geometry  code-golf  kolmogorov-complexity  pi  code-golf  math  combinatorics  permutations  code-golf  math  code-challenge  ascii-art  code-golf  string  code-golf  quine  code-golf  math  floating-point  golfscript  code-golf  string  code-golf  sliding-puzzle  code-challenge  arithmetic  code-golf  math  code-golf  geometry  optimized-output 

10
あらゆるベースのFizzbuzz
チャレンジ 入力: 2〜62の整数。bbb 出力: カウントの等価に基部における桁ための任意の合理的な表現を使用して、。1115000105000105000_{10}bbb しかしながら: 数はで割り切れる場合(丸みを帯びた下、例えば、ベース7は、7/2 = 3.5となり、3.5 + = 4.5 1、に丸め4)の代わりに数、出力'フィズ' 。⌊b÷2+1⌋⌊b÷2+1⌋\lfloor b÷2+1\rfloor 数はで割り切れる場合(切り上げ、例えば11月3日= 3.666、3.666 + 6.666 = 3、に丸め7)、出力'バズ'。⌈b÷3+3⌉⌈b÷3+3⌉\lceil b÷3+3\rceil おそらく推測できると思いますが、数値が両方で割り切れる場合は、「Fizzbuzz」を出力します。 例 使用[0-9]、 [AZ]と[AZ]数字として (例を短くするために、最初の10個の値のみを含めました。通常、各シーケンスにはさらに4990項目あります) 入力: 10(「フィズ」= 6および「バズ」= 7) 出力: 1、2、3、4、5、フィズ、バズ、8、9、10 入力: 2(「フィズ」= 2および「バズ」= 4) 出力: 1、Fizz、11、Fizzbuzz、101、Fizz、111、Fizzbuzz、1001、Fizz (それらがどのように機能するかをよりよく示すために、以下の最初の50の値を含めました) 入力: 55( 'Fizz' = =および 'Buzz' = =)2810281028_{10}s55s55s_{55}2210221022_{10}m55メートル55m_{55} 出力:1、2、3、4、5、6、7、8、9、a、b、c、d、e、f、g、h、i、j、k、l、バズ、n、o、 p、q、r、Fizz、t、u、v、w、x、y、z、A、B、C、D、E、F、G、H、I、J、K、L、M、N …
10 code-golf  math  binary 

3
バイナリパズルソルバー
前書き パズルのルール: パズル(としても知られているバイナリTakuzuまたはSubikuは)理解することは非常に簡単で、かつ唯一のいくつかのルールがあります。 ゲームの名前はバイナリであるので、それはかなり明白だが、あなただけの0と1を記入することができます。 同じ数字を2つだけ縦または横に互いに隣接させることができます 各行と各列には、等しい量のゼロと1が含まれている必要があります(これは暗黙的に、すべてのバイナリゲームが常に偶数次元を持つことを意味します)。 行と列が重複していない場合があります(ゼロと1の順序がまったく同じ)。 必要に応じて、www.binarypuzzle.comでゲームをプレイできます。 戦術: ルール1により、次の場合は常に数字を入力できます。- 同じ数字が2つ縦または横にすでに隣接している場合、両側で反対の数字を入力できます。すなわち.11...→ 0110..。 -縦または横に同じ数字が2つあり、その間に1つのギャップしかない。すなわち.1.1..→.101.. ルール1により、3つのギャップが残っており、同じ数字を3つ隣接させることができない場合、ギャップの1つを埋めることができます。すなわち.0.1.0→ 10.1.0(まだ2つ入力する必要があり、3つの隣接するものを中央に配置することはできないため、最初のギャップはでなければなりません1。) ルール2により、行または列の残りのギャップの半分がすでに反対の桁で埋められている場合は、常に残りのギャップを埋めることができます。すなわち.1.011→010011 規則3により、同じ順序の行を解くために2つだけ残っている場合は、常に反対の数字を埋めることができます。すなわち101100 & 1..100→101100 & 110100 ルール3により、3つのギャップが同じ順序の線上に残っている場合、ギャップを埋めることができます。すなわち010011 & .1.01.→ 010011 & .1.010(1最後にaを入力することはできません。これは、他の2つのギャップにゼロを入力し、両方の行を順番に等しくする必要があるためです。) 例: いくつかの1と0が埋められた次の6x6グリッドから始めます(ドットはまだ埋めていないギャップです): .1.... .10.0. 1.11.. .1.... ...1.0 ...... ルール1および2により、次の数字を入力できます。 .1.01. .1010. 101100 010011 .0.1.0 .010.. ルール1により、行5、列1に1を入力できます。 .1.01. .1010. 101100 010011 10.1.0 .010.. ルール3により、行1、列6に0を入力できます(行4を見た場合): …

7
pseudoprimesをゴルフしましょう!
はじめに/背景 で、最近の議論で暗号チャット私は議論するために/のヘルプ挑戦されたフェルマー素数判定テストとカーマイケル数を。このテストは、a^(p-1) mod p==1常に素数に当てはまるがp、常にコンポジットには当てはまらないという前提に基づいています。カーマイケル番号は、基本的にはフェルマートのテストで最悪の敵です。取得するために同時に素数にならないように選択aする必要がある番号です。が共素数でない場合、本質的には、自明ではない因子を見つけましたpa^(p-1) mod p!=1apそして、誰もが知っているように、因数分解は非常に難しい場合があります。特に、すべての要素が十分に大きい場合。これで、Fermatテストが実際にはあまり使用されない理由がよくわかります(より優れたアルゴリズムがあります)。これは、(セキュリティの観点から)防御者としてのあなたが同じような量の作業を行わなければならない数があるためです。攻撃者(つまり、数を因数分解します)。 これらの数値が魅力的である理由がわかったので、可能な限り最短の方法で数値を生成します。必要に応じて、生成したコードを記憶することができます。 カーマイケル番号は、OEISではA002997としても知られています。関連する課題はすでに ありますが、サイズではなく速度が最適化されているため、ここからのエントリは競争力がありません。同じ議論が逆の方向にも当てはまり、ここのエントリはサイズを優先して速度とトレードオフをする可能性があります。 仕様 入力 これは標準のシーケンスチャレンジなので、正または負でない整数nを入力として使用します。n必要に応じて、0または1のインデックスを付けることができます(指定してください)。 出力 出力は、必要にn応じて、-番目のカーマイケル番号または最初のnカーマイケル番号のいずれかになります(指示してください)。 仕様 整数xは、xが複合である場合にのみカーマイケル数であり、のすべての整数yについてgcd(x,y)=1、それを保持しy^(x-1) mod x==1ます。 誰が勝ちますか? これはcode-golfなので、バイトで最短のコードが優先されます!標準のIOと抜け穴のルールが適用されます。 テストケース 最初のいくつかのカーマイケル番号は次のとおりです。 561,1105,1729,2465,2821,6601,8911,10585,15841, 29341,41041,46657,52633,62745,63973,75361,101101, 115921,126217,162401,172081,188461,252601,278545, 294409,314821,334153,340561,399001,410041,449065, 488881,512461
9 code-golf  math  sequence  number-theory  primes  code-golf  string  code-golf  math  combinatorics  permutations  restricted-complexity  code-golf  array-manipulation  code-golf  number  sequence  code-golf  number  sequence  code-golf  binary-matrix  code-golf  math  tips  javascript  algorithm  code-golf  string  code-golf  number  sequence  code-golf  math  arithmetic  parsing  code-golf  number  sequence  primes  code-golf  string  ascii-art  geometry  integer  code-golf  geometry  code-golf  number  array-manipulation  code-golf  math  geometry  code-golf  number  sequence  arithmetic  integer  code-golf  string  kolmogorov-complexity  code-golf  number  code-golf  number  chess  code-golf  sequence  decision-problem  subsequence  code-golf  math  number  primes  code-golf  primes  permutations  code-golf  integer  probability-theory  statistics  code-golf  string  code-golf  sequence  decision-problem  parsing  board-game  code-golf  binary  graph-theory  code-golf  board-game  classification  tic-tac-toe  code-golf  ascii-art  polyglot  code-golf  date  code-golf  geometry 

13
比較チェーンを拡張
ほとんどの言語と異なり、Python a<b<cは数学で行われるように評価し、ブール値a<bをと比較するのではなく、実際には3つの数値を比較しcます。これをC(および他の多くの)で記述する正しい方法は、a<b && b<c。 この課題の課題は、このような任意の長さの比較チェーンをPython /直感的な表現から他の言語でどのように記述するかまで拡張することです。 仕様書 プログラムは演算子を処理する必要があります。 ==, !=, <, >, <=, >=。 入力には、整数のみを使用した比較チェーンがあります。 途中の比較の真実性について心配する必要はありません。これは、純粋に構文解析/構文上の課題です。 入力には、スペースで分割することで解析を簡単にする回答を防ぐための空白はありません。 ただし、出力には、&&' のみ、または比較演算子と&&'の両方のいずれか、または両方を囲む単一のスペースがある場合がありますが、一貫性があります。 テストケース Input Output --------------------------------------------------------------- 3<4<5 3<4 && 4<5 3<4<5<6<7<8<9 3<4 && 4<5 && 5<6 && 6<7 && 7<8 && 8<9 3<5==6<19 3<5 && 5==6 && 6<19 10>=5<7!=20 10>=5 && 5<7 && …
9 code-golf  parsing  conversion  syntax  code-golf  sequence  primes  code-challenge  geometry  optimization  code-golf  graph-theory  code-golf  number-theory  primes  integer  code-golf  source-layout  cops-and-robbers  code-golf  source-layout  cops-and-robbers  code-golf  sequence  primes  integer  code-golf  math  number-theory  primes  rational-numbers  code-golf  math  sequence  number-theory  primes  code-golf  string  code-golf  math  combinatorics  permutations  restricted-complexity  code-golf  array-manipulation  code-golf  number  sequence  code-golf  number  sequence  code-golf  binary-matrix  code-golf  math  tips  javascript  algorithm  code-golf  string  code-golf  number  sequence  code-golf  math  arithmetic  parsing  code-golf  number  sequence  primes  code-golf  string  ascii-art  geometry  integer  code-golf  geometry  code-golf  number  array-manipulation  code-golf  math  geometry  code-golf  number  sequence  arithmetic  integer  code-golf  string  kolmogorov-complexity  code-golf  number  code-golf  number  chess  code-golf  sequence  decision-problem  subsequence  code-golf  math  number  primes  code-golf  primes  permutations  code-golf  integer  probability-theory  statistics  code-golf  string  code-golf  sequence  decision-problem  parsing  board-game  code-golf  binary  graph-theory  code-golf  board-game  classification  tic-tac-toe  code-golf  ascii-art  polyglot  code-golf  date  code-golf  geometry 

30
int入力nを指定して、n * reversed(n)を出力します
整数nを指定して出力n * reversed(n) reversed(n)は、reverseの桁を取得したときに取得する数値ですn。 reverse(512) = 215 reverse(1) = 1 reverse(101) = 101 >>>>>>>> func(5) = 5*5 = 25 func(12) = 12*21 = 252 func(11) = 11*11 = 121 func(659) = 659*956 = 630004 最短のコードが勝ちます! リーダーボード コードスニペットを表示 var QUESTION_ID=144816,OVERRIDE_USER=71625;function answersUrl(e){return"https://api.stackexchange.com/2.2/questions/"+QUESTION_ID+"/answers?page="+e+"&pagesize=100&order=desc&sort=creation&site=codegolf&filter="+ANSWER_FILTER}function commentUrl(e,s){return"https://api.stackexchange.com/2.2/answers/"+s.join(";")+"/comments?page="+e+"&pagesize=100&order=desc&sort=creation&site=codegolf&filter="+COMMENT_FILTER}function getAnswers(){jQuery.ajax({url:answersUrl(answer_page++),method:"get",dataType:"jsonp",crossDomain:!0,success:function(e){answers.push.apply(answers,e.items),answers_hash=[],answer_ids=[],e.items.forEach(function(e){e.comments=[];var s=+e.share_link.match(/\d+/);answer_ids.push(s),answers_hash[s]=e}),e.has_more||(more_answers=!1),comment_page=1,getComments()}})}function getComments(){jQuery.ajax({url:commentUrl(comment_page++,answer_ids),method:"get",dataType:"jsonp",crossDomain:!0,success:function(e){e.items.forEach(function(e){e.owner.user_id===OVERRIDE_USER&&answers_hash[e.post_id].comments.push(e)}),e.has_more?getComments():more_answers?getAnswers():process()}})}function getAuthorName(e){return e.owner.display_name}function process(){var e=[];answers.forEach(function(s){var r=s.body;s.comments.forEach(function(e){OVERRIDE_REG.test(e.body)&&(r="<h1>"+e.body.replace(OVERRIDE_REG,"")+"</h1>")});var a=r.match(SCORE_REG);a&&e.push({user:getAuthorName(s),size:+a[2],language:a[1],link:s.share_link})}),e.sort(function(e,s){var …
9 code-golf  math  arithmetic  code-golf  math  integer  code-golf  arithmetic  integer  code-golf  sequence  base-conversion  palindrome  code-golf  math  primes  integer  code-golf  parsing  conversion  syntax  code-golf  sequence  primes  code-challenge  geometry  optimization  code-golf  graph-theory  code-golf  number-theory  primes  integer  code-golf  source-layout  cops-and-robbers  code-golf  source-layout  cops-and-robbers  code-golf  sequence  primes  integer  code-golf  math  number-theory  primes  rational-numbers  code-golf  math  sequence  number-theory  primes  code-golf  string  code-golf  math  combinatorics  permutations  restricted-complexity  code-golf  array-manipulation  code-golf  number  sequence  code-golf  number  sequence  code-golf  binary-matrix  code-golf  math  tips  javascript  algorithm  code-golf  string  code-golf  number  sequence  code-golf  math  arithmetic  parsing  code-golf  number  sequence  primes  code-golf  string  ascii-art  geometry  integer  code-golf  geometry  code-golf  number  array-manipulation  code-golf  math  geometry  code-golf  number  sequence  arithmetic  integer  code-golf  string  kolmogorov-complexity  code-golf  number  code-golf  number  chess  code-golf  sequence  decision-problem  subsequence  code-golf  math  number  primes  code-golf  primes  permutations  code-golf  integer  probability-theory  statistics  code-golf  string  code-golf  sequence  decision-problem  parsing  board-game  code-golf  binary  graph-theory  code-golf  board-game  classification  tic-tac-toe  code-golf  ascii-art  polyglot  code-golf  date  code-golf  geometry 

14
バイナリバイナリ拡張
通常、係数を2のべき乗で割り当てることにより、数値を2進数に分解します。 01します。各項のまたはです。 25 = 1*16 + 1*8 + 0*4 + 0*2 + 1*1 選択0とは1非常にバイナリではない...です。2の累乗で拡張することにより真のバイナリ拡張を実行しますが、係数は1か、-1代わりに: 25 = 1*16 + 1*8 + 1*4 - 1*2 - 1*1 今、これはバイナリになります。 正の数が与えられた場合、次のことを確認することは簡単です。 すべての奇数には、無限に多くの真のバイナリ展開があります すべての偶数には真のバイナリ展開はありません したがって、真のバイナリ展開を明確に定義するには、展開を最小にする、つまり最短にする必要があります。 正の奇数の整数を指定するnと、最上位の桁から最下位の桁まで(または逆の順序で)、その真のバイナリ展開を返します。 ルール: これはcode-golfであるため、可能な限り短いバイト数でこれを行うことを目指す必要があります。ビルトインは許可されています。 係数を表してリストできる出力であればどれでも許容されます:配列、セパレータ付きの係数の文字列など... 標準のゴルフ抜け穴が適用されます。 プログラムは、言語の標準整数サイズ内の値で動作するはずです。 テストケース 25 -> [1,1,1,-1,-1] 47 -> [1,1,-1,1,1,1] 1 -> [1] 3 -> [1,1] 1234567 …

5
1と0の正しい組み合わせにテキストを送信します
私は最近、運転中にテキストメッセージを送信するTextpertである曲にリストしました。この曲の特定の1行がこの課題に影響を与えました。 私は写真にテキストを送るほど低く身をかがめることはありません/その代わりに私は1と0の正しい組み合わせにテキストを送ります これは明らかに、これを頭の中で行うことはほとんど不可能であるため、同じことを行うようにプログラムをコーディングすることにより、世界中のtextpertを支援する必要があります。 あなたの仕事は、500x500ピクセルサイズの画像ファイルの名前を取り、ファイルをバイナリとして出力することです。言語がサポートしている場合は、入力として画像を使用することもできます。 拡張子付きの画像ファイルを使用できます .jpg .png .gif .bmp .svg 私の意味が理解できない人のために、画像をバイナリに変換する方法を示すことができます。 ステップ1 ファイルの最初のピクセルを取り、RGB値をR、G、Bの3つの10進数として取得します。たとえば、最初のピクセルが255,0,0(赤)であるとします。 ステップ2 各数値を8ビットのバイナリ表現に変換し、単一の24ビットの数値に連結します。例では、これは111111110000000000000000 ステップ3 この24ビットの数値を最終出力に追加します。したがって、最終的な出力があるべき6000000長い数字と完全で構成すべきである1と0 これはコードゴルフなので、最短のコードが勝ちます!

6
目を見張る
楕円と棒として印刷されたバイナリ値を目撃することはそれほど簡単ではありません...そのためには、カスタムバイナリ表現で数値を出力する関数(またはプログラム)を記述する必要があります。 したがって、たとえば3(00000011)のような数値を受け取り、ビットをユーザー定義の形式で、たとえばスペースで区切られたペアで出力したいとします。 00 00 00 11 または、たとえば、逆の順序で、いくつかのデコレータを使用します。例: 11_00_00_00 さらに、 '0'と '1'をカスタム文字として表示して、それらをよりよく区別できるようにする必要があります。例: XX oo oo oo したがって、次の仕様ですべてを行うコードを作成することが課題です。 仕様 関数は次のような入力を受け取ります: f(A、mask、zeros、ones) パラメーター: A-入力数値-0から255の範囲の任意の(符号なし)整数。 mask-出力の構成を定義する文字列パラメーター。 zeros-同じ長さの文字列で、各出力スロットの「ゼロ」グリフを定義します。 ones-同じ長さの文字列で、出力スロットごとに「1」グリフを定義します。 出力構成のルール: 出力がどのように生成されるかを理解するには、例とともにこの画像をよく見てください。 したがって、マスクの1桁のみが解析され、Aの対応するビットに置き換えられます。他の文字はそのままです。さらに、取得したビットの値が1の場合、最終出力に「X」として表示され、0の場合、「o」として表示されます。上記の例では、取得した4つのビットはすべて「1」なので、すべてのスロットに「X」が表示されます。 入力数が128の場合、論理的には、出力はになりますX foo bar ooo。パラメータ「0」と「1」の文字:印刷可能なASCII文字。マスクと常に文字揃えされていると想定します。 注: ビットのインデックスは0です。0番目のビットはMSBです。 数字8、9はマスク文字列では許可されていないと仮定します。 入力文字列には、印刷可能なASCII文字が含まれます。 「ゼロ」と「1」はマスクに合わせて文字で整列されます。 あなたの言語の特殊文字/修飾子の場合:入力文字列に表示されないと想定できます。 明確にするために、他の例を参照してください。 入力->出力例 すべての8ビットをスペース区切り文字で共通の順序で、楕円と棒の一般的な表記で出力します。 mask = "0123 4567" zeros = "0000 0000" ones = …

5
ハミング距離シーケンスの数を数える
等しい長さの2つの文字列間のハミング距離は、対応するシンボルが異なる位置の数です。 してみましょうP長さのバイナリ文字列にするnとT長さのバイナリ文字列です2n-1。の左から右へのすべての-lengthサブストリングn間のハミング距離を計算し、それらを配列(またはリスト)に入れることができます。PnT ハミング距離シーケンスの例 ましょうP = 101とT = 01100。このペアから取得するハミング距離のシーケンスは2,2,1です。 仕事 増加のためnで始まるn=1、バイナリ文字列のすべての可能なペアを検討P長さのnとT長さのを2n-1。その2**(n+2n-1)ようなペアが存在するため、ハミング距離のシーケンスが多くなります。ただし、これらのシーケンスの多くは同一です。タスクは、どれがどれだけ異なるかを見つけることnです。 コードは、の値ごとに1つの数値を出力する必要がありますn。 スコア あなたのスコアは、nあなたのコードが私のマシンで5分間に達成した最高点です。タイミングは、そのためだけの時間ではなく、合計実行時間に対するものnです。 誰が勝ちますか 最もスコアの高い人が勝ちます。2人以上の人が同じスコアで終わる場合、それが勝つ最初の答えです。 回答例 ためにnから1の8最適な答えがあります2, 9, 48, 297, 2040, 15425, 125232, 1070553。 言語とライブラリ 利用可能な任意の言語とライブラリを使用できます。可能であれば、コードを実行できるようにするとよいでしょう。そのため、可能であれば、Linuxでコードを実行/コンパイルする方法の完全な説明を含めてください。 マイマシンタイミングは64ビットマシンで実行されます。これは、8GB RAM、AMD FX-8350 Eight-Core Processor、Radeon HD 4250を備えた標準のUbuntuインストールです。これは、コードを実行できる必要があることも意味します。 主要な回答 11におけるC ++ feersumによる。25秒。 11でC ++アンドリュー・エプスタインによります。176秒。 Neil によるJavascriptの10。54秒。 9でHaskellの nimiによります。4分59秒。 8でJavascriptを fənɛtɪkによります。10秒。

5
10進数と2 ** iの基数で表を印刷する
コンピュータはバイナリで生きています。すべてのプログラマーはバイナリーを知っています。 しかし、2**xベースは非実用的であるとしばしば無視されますが、それらはバイナリとの美しい関係を持っています。 そのような美しい関係の一例を示すために、19が私の証言になります。 19 10011 103 23 13 j 19は10進数で、わかりやすくするために含まれています。 10011は2進数で19です。 103、base 4では、バイナリから次のように作成されます。 log2(4)== 2、2つ覚えておきましょう。 2の倍数の長さになるようにパッド10011-> 010011 2 x 2の数字を左から右に取り、2桁の2進数として扱います。 01-> 1 00-> 0 11-> 3 完了、base-4の10011は103です。 底が8の場合、log2(8)= 3と同じですが、3行3列です。 パッド010011 010-> 2 011-> 3 23、完了。 基数16の場合、log2(16)= 4と同じですが、4行4列です。 パッド00010011 0001-> 1 0011-> 3 13、完了。 仕事 入力として最大数を指定すると、テーブルを出力します base-ten-i base-two-i base-four-i base-eight-i base-sixteen-i …

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