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

他のタグでカバーされていないアスペクトの最適化に焦点を当てた課題。

14
1の最大長方形を見つける
バックグラウンド 土地を購入して、その上に家を建てたいです。私の家は長方形で、できるだけ大きくなければなりません。しかし、利用可能なプロットには、私が構築できない岩の多いエリアがたくさんあり、プロットに潜在的な家を当てるのに苦労しています。私にプロットを分析するプログラムを書いてほしい。 入出力 入力は、妥当な形式の、少なくとも1×1サイズの長方形の2Dビット配列です。配列は土地のプロットを表します。1sは家を建てることができる「良い」エリアであり、0sは家を建てることができない「岩だらけの」エリアです。 出力は1、入力配列内のsの塗りつぶされた長方形の最大領域になります。それは、私がプロット上で構築できる最大の家の面積を表しています。1入力にs がない場合、出力はであることに注意してください0。 例 入力を検討する 101 011 111 1s の最大の長方形は、右下隅の2×2の長方形です。これは、正しい出力がであることを意味します4。 ルールとスコアリング 完全なプログラムまたは関数を作成できます。最小のバイトカウントが優先され、標準の抜け穴は許可されません。 テストケース 0 -> 0 1 -> 1 00 00 -> 0 01 10 -> 1 01 11 -> 2 111 010 111 -> 3 101 011 111 -> 4 0111 1110 1100 -> 4 1111111 …

2
手がかりのないユニークに解けるクロスワードを作成します…
ニューヨークタイムズのクロスワードパズルを手がかりなく解くことを想像できますか?おそらく、すべての創造性と新しいクロスワードに登場する新しい単語やフレーズではなく、単語リストを固定することでいくつかの希望があります。この課題では、理論上可能なクロスワードパズルグリッドを作成します。 チャレンジ 白と黒の陰影の付いた15x15クロスワードパズルグリッド内の白い四角の数を最大化して、白い四角に文字を一意に入力して、スクラブルの国際的な単語リストにすべての上下の単語が表示されるようにします。 グリッド構築の説明 米国の新聞では、クロスワードグリッドは通常、すべての文字が「チェック」されるように構築されます。つまり、「クロス」ワードと「ダウン」ワードの両方の一部です。英国およびその他の地域(特に不可解なクロスワード)では、これは必ずしも当てはまりません。「横切る」または「下」の単語が1文字だけの場合、実際の単語(「A」や「I ")。この課題では、より緩和されたルールに従います。1文字の単語は単語リストに表示する必要はありません。 他にもさまざまな伝統があり(米国およびその他の地域)、この挑戦​​で従う必要はありません。たとえば、単語の長さは2文字のみで、単語の繰り返しが許可されているため、グリッドは(回転)対称である必要はありません。 これも可能ですか? はい!短いスクリプトを記述して、左側の次の空白グリッドに対する一意のソリューションが右側の塗りつぶされたグリッドであることを確認できます。 次のように、コンピュータが読み取り可能な形式で塗りつぶされたグリッドを表示できます。 ###CH########## ###YE########## ###AM########## CYANOCOBALAMINE HEMOCHROMATOSES ###CH########## ###OR########## ###BO########## ###AM########## ###LA########## ###AT########## ###MO########## ###IS########## ###NE########## ###ES########## あなたのソリューション 上のグリッドには、15x15グリッドの合計225個の正方形のうち56個の白い正方形があります。これは、この課題のベースラインとして機能します。また、白い正方形の数が少ないグリッドは、スコア以外の理由で、たとえば上記の美的伝統のいくつかを満たしている場合に興味深いかもしれません。 上記のコンピューター読み取り可能なベースラインと同じ形式でソリューションを送信してください。グリッドに独自のソリューションがあることを確認するコードを含めてください。 興味深いコードスニペット(たとえば、可能性のあるスペースを検索するため)や、グリッドを見つけた方法についての議論を歓迎します。 単語リスト 国際的なスクラブルワードリストは、以前はSOWPODSとして知られており、現在はコリンズスクラブルワード(CSW)と呼ばれています。ほとんどの国(特に米国を除く)で使用されています。このリストには、英国の綴りが含まれており、一般的にアメリカの単語リストよりもかなり多くの単語があるため、このリストを使用することを好みます。このリストには、わずかに異なる複数のエディションがあります。このリストのさまざまなバージョンは、Wikipedia、Github、Peter NorvigのNatural Language Corpusなどでリンクされており、多くの場合「SOWPODS」と呼ばれています。 この課題は、単語リストの選択の幅広い性質に非常に敏感ですが、小さな詳細にはそれほど敏感ではありません。たとえば、上記のベースラインの例はどのエディションのCSWでも機能しますCHが、アメリカのスクラブルの単語リストには含まれていません。矛盾がある場合は、CSWの最新版であるCSW19を使用することをお勧めします。(今年リリースされたこのリストを使用すると、この課題に対する回答がより長く有効であると期待できます)。このリストは、公式のScrabbleワードファインダーサイトで対話形式でクエリするか、Board&Card Games Stack ExchangeまたはRedditのr / scrabbleから(前のバージョンのCSW15と同様に)ダウンロードできます。 Tldr:このチャレンジの信頼できる単語リストは、Board&Card Games Stack Exchangeでプレーンテキストファイル(279,496単語、1行に1つ)として入手できます。 さらなる議論 初期の回答とコメントで提起された問題の1つは、既存のクロスワード(NYTなど)がこの質問に答えない理由です。具体的には、公開されたNYTクロスワードの最小数の黒い正方形(したがって、最大数の白い正方形)のレコードは、クロスワードで最も有名なレコードです。レコードグリッドを使用できないのはなぜですか?いくつかの問題があります。 NYTクロスワードの回答の多くは、単語リストに載っていません。たとえば、レコードグリッドには、PEPCID(ブランド名)、APASSAGETOINDIA(スペースなしで記述された映画と小説の4単語の固有名)、およびSTE(「Sainte」の略語)が含まれます。レコードグリッドはスクラブルの単語では解決できないようです。 単語リストを拡張して単語を追加するだけでは、必ずしもこの課題に役立ちません。レコードグリッド内のすべての単語が単語リストに表示されたとしても、解決策は手がかりがないと一意ではありません。多くの場合、すべての単語を保持しながら、回答の最後にある文字を変更することが可能です。(たとえば、右下の文字はa DからR。に変更できます。)実際、これは、クロスワードを作成して「より良い」単語を取得しようとする(人間の)構築プロセスの一部です。 通常のクロスワードが(通常)独自の解決策を持っている理由は、手がかりが正しい答えを絞り込むのに役立つからです。手がかりを使わずに単にグリッドを単語で埋めようとすると、可能性がないか、多くの可能性がある可能性があります。同じグリッド(NYTで比較的頻繁に使用されるもの)の3つの異なる塗りつぶし(このチャレンジの単語リストを使用)の例を次に示します。 …

14
これは切り捨てられた三角形の数ですか?
関連するOEISシーケンス:A008867 切り捨てられた三角数 三角形の数の一般的なプロパティは、三角形に配置できることです。たとえば、21を取り、osの三角形に配置します。 o ああ おー おおおお ああ おっと 各角から同じサイズの三角形を切り取る「切り捨て」を定義しましょう。21を切り捨てる1つの方法は次のとおりです。 。 。。 おー おおおお 。おー。 。。oo。。 (の三角形は.オリジナルからカットされます)。 o残りは12 秒なので、12は切り捨てられた三角形の番号です。 仕事 あなたの仕事は、整数を取り、数値が切り捨てられた三角形の数であるかどうかを返す(または標準出力メソッドのいずれかを使用する)プログラムまたは関数(または同等のもの)を書くことです。 ルール 標準的な抜け穴はありません。 入力は負でない整数です。 カットの辺の長さは元の三角形の半分を超えることはできません(つまり、カットは重なり合うことができません) カットの辺の長さはゼロにすることができます。 テストケース 真実: 0 1 3 6 7 10 12 15 18 19 偽物: 2 4 5 8 9 11 13 14 16 17 20 …
20 code-golf  math  decision-problem  number-theory  integer  code-golf  number  decision-problem  functional-programming  code-golf  array-manipulation  matrix  code-golf  string  classification  string  code-challenge  binary  compression  decode  code-golf  string  string  code-challenge  balanced-string  encode  code-golf  number-theory  integer  base-conversion  code-golf  math  number-theory  geometry  abstract-algebra  code-golf  array-manipulation  sorting  optimization  code-golf  math  geometry  image-processing  generation  code-golf  string  cops-and-robbers  repeated-transformation  grammars  cops-and-robbers  repeated-transformation  grammars  code-challenge  restricted-source  tips  source-layout  javascript  code-challenge  kolmogorov-complexity  restricted-source  code-golf  combinatorics  counting  math  fastest-code  linear-algebra  code-golf  math  permutations  matrix  linear-algebra  code-golf  string  decision-problem  restricted-source  code-golf  number  array-manipulation  subsequence  code-golf  number  array-manipulation  matrix  code-golf  brainfuck  code-golf  color  code-golf  quine  source-layout  code-golf  subsequence  code-golf  string  ascii-art  code-golf  string  ascii-art  alphabet  code-golf  decision-problem  interpreter  hexagonal-grid  halting-problem  code-golf  string  polynomials  calculus  code-golf  math  decision-problem  matrix  complex-numbers  code-golf  random  code-golf  number  arithmetic 

3
ピエト(モンドリアン)のパズル
詳細については、このビデオをご覧になり、関連するシーケンスについてはA276523をご覧ください。 モンドリアンパズル(整数用n)は次のとおりです。 一致しない長方形をn*n正方形のグリッドに合わせます。最大の長方形と最小の長方形で可能な最小の違いは何ですか? 以下のために6、のための最適な違いがM(6)ある5、としてのように証明することができます。 ___________ | |S|_______| | | | L | | |_|_______| | | | | | |_____|___| |_|_________| (fig. I) 最大の長方形(L)の面積は2 * 4 = 8で、最小の長方形(S)の面積は1 * 3 = 3です。したがって、違いは8 - 3 = 5です。 現在、最適な解決策n > 44が見つかっていないことに注意してください。 あなたの仕事は、整数を与えられた(最適でない)ソリューションを含むモンドリアングリッドを生成するプログラムを作成することnです。 100〜150の数値でテストされます。各テストのスコアは、最大の長方形と最小の長方形の差になります。合計スコアは、100〜150のすべてのテストのスコアの合計です。 次のように出力を提示する必要があります。 {number} {grid} ここで、numberスコア(最大と最小の差)であり、gridいずれかです。 複数行の文字列、または 二次元リスト。 グリッドは、長方形の開始位置と終了位置を明確に表示する必要があります。 ルール: あなたのプログラムはあなたの答えの範囲内に収まらなければなりません。 …

29
最大偏差を見つける
この問題は、Quoraで最初に尋ねられた質問から「インスパイアされた」ものです(コードゴルフではありません)。私はそれを皆さんに挑戦したいだけです(そして、ここでの私の最初の問題提出)。 整数要素の配列vと整数d(dは配列の長さ以下であると仮定します)が与えられた場合、配列内のd連続した要素のすべてのシーケンスを考慮します。各シーケンスについて、そのシーケンス内の要素の最大値と最小値の差を計算し、偏差と名付けます。 あなたの仕事は、上記で考慮したすべてのシーケンスのすべての偏差の中で最大値を計算し、その値を返すか出力するプログラムまたは関数を作成することです。 実施例: v: (6,9,4,7,4,1) d: 3 The sequences of length 3 are: 6,9,4 with deviation 5 9,4,7 with deviation 5 4,7,4 with deviation 3 7,4,1 with deviation 6 Thus the maximal deviation is 6, so the output is 6. これはコードゴルフであるため、バイト単位の最短回答が優先されます。

4
「仕上げ作業」をできるだけ早く
バックグラウンド ちょっとした退屈な仕事があると想像してください。毎朝、その日に作業すべきタスクのコレクションが提供されます。各タスクには一定の期間があり、一度開始すると、一度に完了する必要があります。上司はアイドリングを許容しないので、家に帰る前にまだ完了できるタスクがある場合は、そのうちの1つで作業する必要があります(どちらを選択するかは選択できます)。逆に、残りのすべてのタスクで残業が必要な場合は、早めに帰宅してください!したがって、あなたの目標は、賢明なスケジューリングにより、勤務時間を最小限に抑えることです。 楽しい事実:これは、怠zyな官僚のスケジューリング問題の 1つのバリアントであり、NPハード(ソース)です。 入力 2つの入力があります:就業日の「時間単位」の数(正の整数L)、およびタスクのコレクション(Tタスクの継続時間を表す、空でない正の整数の配列)。それらは、任意の順序で、合理的な形式で服用できます。配列にTは、期間がを超えるタスクが含まれることがありますが、期間が最大Lで少なくとも1つのタスクが含まれることが保証されますL。 出力 有効なスケジュールは、タスクのサブセットであるS ⊆ Tようにsum(S) ≤ Lしていない、そしてすべてのタスクS(カウント多重度)、厳密以上の持続時間を有しますL - sum(S)。あなたの出力は、有効なスケジュールの可能な限り最小の合計となります。言い換えれば、今日作業しなければならない時間単位の最小数を出力しなければなりません。 例 入力を検討する L = 9 T = [3,4,4,4,2,5] 1日をスケジュールする1つの方法は、[4,4]2つのタスクを8つの時間単位で完了し、1つの単位を残すことです。1ユニットのタスクは利用できないため、家に帰ることができます。ただし、スケジュール[2,5]はさらに優れています。7時間単位で作業すると、残りのタスクはすべて3時間単位以上かかります。[2,4]6時間単位で作業した後でも、3単位タスクを完了するのに十分な時間があるため、スケジュールは無効です。7ユニットが最適であることが判明したため、正しい出力は7です。 ルールとスコアリング 完全なプログラムまたは関数のいずれかを作成できます。最小のバイトカウントが優先され、標準の抜け穴は許可されません。時間制限はないため、ブルートフォースは完全に受け入れられます。 テストケース これらは形式で与えられますL T -> output。 1 [1,2] -> 1 6 [4,1] -> 5 7 [7,7,9] -> 7 9 [3,4,4,4,2,5] -> 7 20 [6,2,3,12,7,31] -> 17 …

7
Scralphabetを最適化する
Scralphabet スクラブルタイルの通常の袋には、次の文字が含まれています(?他の文字を表すことができる空のタイルです)。 AAAAAAAAABBCCDDDDEEEEEEEEEEEEFFGGGHHIIIIIIIIIJKLLLLMMNNNNNNOOOOOOOOPPQRRRRRRSSSSTTTTTTUUUUVVWWXYYZ?? 文字には次の値があります。 {"A": 1,"B": 3,"C": 3,"D": 2,"E": 1,"F": 4,"G": 2,"H": 4,"I": 1,"J": 8,"K": 5,"L": 1,"M": 3,"N": 1,"O": 1,"P": 3,"Q": 10,"R": 1,"S": 1,"T": 1,"U": 1,"V": 4,"W": 4,"X": 8,"Y": 4,"Z": 10,"?": 0} スクラブルタイルの通常のバッグが与えられた場合、以下の条件が与えられた場合に、スコアが最高の非交差単語のセット(つまり、スクラブルボードではなく個々の単語)を構築します。 各単語のスコアはsum(letter_values) * length(word)です。 アルファベットの各文字で始まる単語を1つだけ含めることができます(したがって、最大26単語)。 有効なスクラブル語(この辞書から)のみを含めることができます。辞書をファイルから読んだり、ハードコーディングしたり(ugh)、Webサイトから削除したりできます。 すべてのタイルを使用する必要はありませんが、すべての未使用のタイルは単一の単語を形成し、同じ方法でスコア付けされ、スコアから減算されます。 必要に応じて、コードは2つの入力を受け入れることができます。バッグの内容を文字列として、およびPythonに類似した何らかの形式の文字値dict(上記)。または、バッグの内容と文字の値をハードコーディングできます。セット内の単語、それぞれのスコア、合計スコアを適切な形式で出力する必要があります。 最も高いスコアの単語セットが勝ちとなり、同点が最初に投稿されます。

8
マトリックスを通る最適なパス
正の整数で構成される行列を指定すると、左上の要素から右下に移動するときに最小の合計のパスを出力します。垂直、水平、斜めに移動できます。上/下、右/左、および斜めにすべての側面に移動できることに注意してください。 例: 1* 9 7 3 10 2 2 10 4* 1* 1* 1* 7 8 3 6 3 8 9 5* 7 8 10 2 5 2 1* 4 5 1 1 3 6 7 9* 最小の合計を与えるパスはアスタリスクでマークされ、次の合計になります:1 + 4 + 1 + 1 + 1 + 5 + 1 …

2
アイランドゴルフ#2:風変わりな隠者
これは、一連のアイランドゴルフチャレンジの2番目です。前の挑戦 2つの隠者が砂漠の島に到着しました。彼らは孤独を求めてやって来たので、彼らはお互いにできるだけ遠くに住みたいと思っています。彼らは彼らの間の歩行距離を最大にするために彼らの小屋をどこに建てるべきですか? 関連読書 入力 入力は、土地と水を表す2つの文字で構成される長方形のグリッドになります。以下の例では、土地はで#あり、水はです.。ただし、任意の2つの異なるキャラクターを使用できます。 ........... ...##...... ..#####.... ..#######.. .#########. ...#######. ...#####.#. ....####... ........... 常に少なくとも2つの土地タイルがあります。土地のタイルはすべて連続しています(つまり、島は1つだけです)。水タイルも連続しています(つまり、湖はありません)。グリッドの外側の境界線はすべて水タイルになります。ランドタイルは斜めに接続されません。つまり、次のようなものは表示されません。 .... .#.. ..#. .... 出力 コードは、2つの小屋の場所がマークされた同じグリッドを出力する必要があります。以下の例では、小屋の場所にXのマークが付けられていますが、土地や水のキャラクターと区別できる限り、任意のキャラクターに置き換えることができます。 小屋の場所は、それらの間の歩行距離を最大化するように選択された2つの土地タイルでなければなりません。歩行距離は、2つのポイント間の完全な陸上の最短経路の長さとして定義されます。ランドタイルは、水平方向または垂直方向に隣接していると見なされますが、斜めではありません。 上記の島の可能な解決策: ........... ...X#...... ..#####.... ..#######.. .#########. ...#######. ...#####.X. ....####... ........... これらの2つのポイント間の歩行距離は11で、この島の任意の2つのポイント間の最大距離です。別のdistance-11ソリューションがあります。 ........... ...##...... ..X####.... ..#######.. .#########. ...#######. ...#####.X. ....####... ........... 詳細 あなたの解決策は、完全なプログラムまたは機能かもしれません。いずれかのデフォルトの入力と出力の方法が許容されています。 入力と出力は、複数行の文字列、文字列のリスト、または2D配列/文字のネストされたリスト/単一文字の文字列です。出力には、(オプションで)単一の末尾改行がある場合があります。上記のように、代わりに3つの異なる文字#.Xを使用できます(使用する文字を提出時に指定してください)。 テストケース A.ユニークな小屋の配置がある島: .... .##. .... …

2
首謀者の戦略
私は、Mastermindのコードゴルフチャレンジしか見つけることができなかったので、ここに、自分が挑戦したいコードチャレンジバージョンを示します。 通常の首謀者ゲームの最適な戦略であるMM(4,6)は、1993年に小山とライによって発見され、平均推測数= 5625/1296〜4.34でした。MM(5,8)はまだ解決されていませんが、推測の平均数は5.5であると推定されます。 あなたの仕事は、MM(5,8)戦略を作成することです。これは、5つの穴と8つの色に対応し、すべてのpow(8,5) = 32768可能な個別のソリューションをカバーします。明らかに、最適なものである必要はありません。次の2つの選択肢があります。 戦略を生成する決定論的プログラムを投稿します。このプログラムは、Windows 7、Mac OS X、またはLinux上で、フリーでないソフトウェアを追加せずにコンパイル/実行できる必要があります。 戦略を(StackExchange名とともに)インターネット上のどこかに公開し、ここにURLを投稿します。 どちらの場合も、回答のヘッダーにスコア(以下を参照)を明記してください。 戦略は、次の文法に従ってエンコードする必要があります。 strategy : guessing-strategy | known-solution-strategy guessing-strategy : '{' guess ':' branches '}' known-solution-strategy : guess guess : color color color color color color : 'A'..'H' branches : '{' branch (',' branch)* '}' branch : reply ':' strategy …

1
ハルマの最短2プレイヤーゲーム
Chessでは、Fool's Mateを使用して4移動(各2回)した後にゲームを終了することができます。 あなたの目標は、Fool's Mate of Halmaを見つけることです。これは、プレイするターン数を最小限に抑えるHalmaの2人用ゲームです。 10 56を超えるボードステートがあり、分岐係数が1000を超えているのを見てきたので、最適なソリューションが見つかる可能性は誰にもありません。代わりに、できる限り最適なソリューションを見つけようとしています。 移動のリストと、それらの移動の生成に使用したコードを送信する必要があります。 ゲームの説明 HalmaはChinese Checkersに似ていますが、16 * 16の正方形のボードでプレイします。 最初、ボードは次のようになります。 ゲームの目的は、すべてのピースを対戦相手のピースの開始位置に移動することです。 プレーヤーのターンで、彼/彼女は以下を行うことができます。 ターンを渡す 自分の作品の1つを隣接する空きスペースに移動します。隣接するスペースには対角線が含まれます。 彼/彼女の作品のいずれかを取り、何度でも次の操作を行います。隣接する作品の上に作品をジャンプし、飛び越えた作品の反対側のスペースに着地します。 次に、2番目のタイプの移動を説明する例を示します。 ルール ゲームが終了する合法的な動きのリストを提出してください。 リストの生成に使用したコードを送信します。 他の人のコードからより良い結果を得る場合、コメントで結果を投稿するか、新しい結果で投稿を編集してください。 各移動はNone、ターンを通過するか(x1,y1,x2,y2)、ピースを移動する必要があります。移動するピース(x1,y1)の座標とそのピースの移動(x2,y2)先です(ジャンプ移動の場合、中間座標は無視します)。座標(0,0)は左上隅から始まります。x座標は右に増加し、y座標は下に増加します。移動は改行で区切る必要があります。 このpythonスクリプトを使用して、移動を確認できます。でpython halma_verify.py < file移動を確認するために使用しfileます。 最短リストが勝ちます。

8
シャッフルブロックで並べ替え
ブロックシャッフルソート ブロックは、ソートシャッフルリストをソートする(むしろ人工的な)方法です。例で示すように、次のように機能します。 [6, 1, 0, 3, 2, 4, -2, -1] Break list into contiguous blocks [6][1, 0][3, 2, 4][-2, -1] Sort each block [6][0, 1][2, 3, 4][-2, -1] Sort blocks lexicographically [-2, -1][0, 1][2, 3, 4][6] Concatenate [-2, -1, 0, 1, 2, 3, 4, 6] 連続ブロックへのパーティションは、任意に選択できます。ただし、ブロックのすべての選択が最後にソートされたリストを生成するわけではありません。 [6, 1, 0, 3, …

1
アドベントチャレンジ1:サンタが現在の金庫をアンロックできるように助けてください!
次へ>> 記述キーワード(検索用):2つの行列を同等にする、重複、配列、検索 チャレンジ サンタは過去にエルフがボールトからプレゼントを盗んだという歴史があったため、今年は非常に割れにくいロックを設計し、今年はエルフを締め出したようです。残念ながら、彼は組み合わせを失い、それを開く方法もわかりません!幸いなことに、彼はあなたにその組み合わせを見つけるプログラムを書くように依頼しました。それは最短のものである必要はありませんが、できるだけ早く見つける必要があります! 彼には非常に厳しいスケジュールがあり、非常に長い間待つ余裕はありません。スコアは、プログラムの合計ランタイムに、スコアリング入力に対してプログラムが出力するステップ数を掛けたものになります。最低スコアが勝ちます。 仕様書 ロックは1と0の正方行列です。1と0のランダムな配置に設定され、指定されたコードに設定する必要があります。幸いなことに、サンタは必要なコードを覚えています。 彼が実行できるいくつかのステップがあります。各ステップは任意の連続したサブマトリックスで実行できます(つまり、左上隅と右下隅で完全に囲まれているサブマトリックスを選択する必要があります)(非正方形のサブマトリックスにすることができます): 右に90度回転* 左に90度回転* 180度回転 各行n要素を右または左に循環(ラップ) 各列m要素を上下に循環(ラップ) 水平に反転 垂直に反転 主対角線で反転* メインの対角線を反転* *サブマトリックスが正方形の場合のみ もちろん、彼はマトリックス全体でこれらのステップを実行することもできます。1と0はマトリックス上でのみ交換できますが、正方形の値は直接変更できないため、1と0の数は開始構成と終了構成で同じです。 フォーマット仕様とルール 入力は、必要な妥当な形式の2つの正方行列(開始位置と終了位置)として与えられます。出力は、読み取り可能な形式のこれらの手順のシーケンスである必要があります。これはコードゴルフではないので、簡単に検証可能な形式にしてください。しかし、それは厳密な要件ではありません。必要に応じて、入力の行列の辺の長さを選択できます。 あなたのプログラムは私のコンピューターで実行され(Linux Mint、誰かが気にするならリクエストに応じて正確なバージョンの詳細が利用可能です:P)、コマンドラインで「Enter」を押してからコマンドが終了します。 テストケース 1 0 0 1 0 0 0 0 0 1 1 0 -> 0 0 0 0 0 1 1 0 -> 1 1 1 1 …

4
圧縮された曜日
曜日のリストの入力が与えられると、リストの最短のソートされた表現を出力します。 入力の形式は、2文字のストリングの一つ以上からなる文字列であるSu(日)、 Mo(月)、 Tu(など)、 、We、Th、 FrおよびSa。入力は必ずしもソートされた順序で与えられるとは限りません。 入力を出力形式に変換するには、 入力を日曜日から始まる曜日で並べ替えます(例ThMoSaSuFrTuWe-> SuMoTuWeThFrSa)。 あいまいさを残さない場合は、略語を1文字に減らします。たとえば、最初のSが土曜日になることができなかったため、にSuMoTuWeなるはずSMTWです。これにより、出力がソートされなくなります(Tと同じ)。しかし、ThFrSaなるはずThFS火曜日と木曜日の両方が金曜日前にそれを減らしてくると、TFSあいまいさを作成します。 出力がnowの場合、代わりMTWTFに出力D(「week day s」を表します)。同様に、SSなるはずE週間のために終了。最後に、 SMTWTFSなるべきAために、すべての日。 入力と出力は両方とも単一の文字列でなければなりません。 これはcode-golfであるため、バイト単位の最短コードが優先されます。 テストケース: In Out | In Out -----------------------|-------------------- SuTu STu | SuTuWe STW SuTuSa STuS | SuWeTh SWT TuThSa TTS | TuThSu STT Su Su | Sa Sa WeTh WT | FrTh ThF WeTu TW …

14
変装の順列
実数のエントリを持つ次元のベクトルが与えられた、距離に関して最も近い順列を見つけます。nnnvvvppp(1 、2 、。。。、N )(1、2、。。。、n)(1,2,...,n)l1l1l_1 詳細 より便利な場合は、代わりに順列を使用できます。最も近い順列が複数ある場合は、いずれか1つまたはすべてを出力できます。(0 、1 、。。。、N - 1 )(0、1、。。。、n−1)(0,1,...,n-1) 2つのベクトル間の距離は、として定義されl1l1l_1あなた、vあなたは、vu,vd(u 、v )= ∑私| あなたは私− v私| 。d(あなたは、v)=∑私|あなたは私−v私|。d(u,v) = \sum_i \vert u_i-v_i\vert. 必要に応じて、入力が整数のみで構成されていると想定できます。 例 [0.5 1] -> [1 2], [2 1] c*[1 1 ... 1] -> any permutation [1 4 2 6 2] -> [1 4 3 5 2], [1 …

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