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

文字列の使用と操作を通じて特定の問題を解決するための競争。

1
より大きく、より良い(壊れた)ジッパー
(この課題にかなりひらめきを与えた) 最初の課題では、水平ジッパーを作ることでしたが、私のパーカーを見下ろすと、私のジッパーははるかに垂直になります(そして少し壊れています):P 入力 単一の文字列(s)と、任意の形式の整数のペア(aおよびb)が与えられます。どこ: a < (length-of-s / 2) b <= ((length-of-s / 2) - (a + 1)) / 6 出力とスコアリング プログラムは、完全なプログラムか、選択した正しい書式または配列(1行に1項目)の単一の文字列を生成する関数です。出力の文字がすべて揃っている限り、先頭と末尾のスペースと改行はオプションです。例えば。 ["f r"],["u e"],["l p"],["l p"],["y i"],[" o z "],[" p n "],[" e "] または "f r\nu e\nl p\nl p\ny i\n o z \n p n \n e …

7
コードゴルフ組立ライン
注:この課題は、実際のアセンブリ言語とは関係ありません。 Code-Golf Factory Inc.の責任者として、特定のコードを生成するためのアセンブリラインを作成する必要があります。今日、職長はあなたにクインを生産するように頼みました。 仕様: この課題の目的は、適切なサブセクションがクインでもあるようなクインを記述することです。 これはコードゴルフなので、(メインプログラムの)最小バイトが勝ちます。標準の抜け穴は禁止されており、メインプログラムとサブセクションの両方が真のクインでなければなりません。 サブセクションはメインプログラムより少なくとも2文字短くする必要があります。つまり、最小スコアは3バイトです。 作業するには、選択したサブセクションが1つだけ必要です。

2
ワードチェーンリローデッド
これは、「単語の連鎖を再生する」と「単語の長い連鎖を構築する」の変形です。 入力は、[az]の文字で構成された2文字以上の一意の単語の空でないリストです。可能な限り長いチェーンの長さを出力する必要があります。後続の各単語は、前の単語の最後の文字で始まります。リストの任意の単語から始めることができます。 別のひねりは、あなたがリスト上の任意の単一の単語を繰り返すことを許可されていることです。ただし、2ワードブロックを繰り返すことはできません。たとえば、2ワードのブロック()を繰り返したため、 cat->tac->catは許可されていますが、許可されていcat->tac->cat->tacませんcat->tac。また、同じ単語を2回続けて使用することはできません(例:)eye->eye。 例: cat dog tree egg => 3(猫->木->卵) new men ten whim => 5(ten-> new-> whim-> men-> new) truth fret heart his => 5(フレット->真実->ハート->真実->彼) we were stew early yew easy => 9(シチュー->あった->早い->イチ->いた->イージー->ユー->ウィー>>イージー) tac cat tac cot tac can => 6(tac-> cat-> tac-> cot-> tac-> can) (私がこれらの例のいずれかで間違いを犯したかどうか、またはあなたがもっと思いついた場合はお知らせください。)

5
ASCII 2Dゲームマップ
問題 入力所与のa任意の入力形式で文字のグリッドであれば出力の各「ブロック」1つだけの要素を有するものです。 そして入力bbは入力と同じサイズの数値のグリッドですa。 道路には2つのタイプがあります。1はでマークされた石の道路を@表し、2はでマークされた未舗装の道路を表します# @道路は、ブロックの中心と道路側はグリッドセルの境界に拡張されることが、隣接している場合、サイズ6x6のです #道路は、ブロックの中央に道路側はグリッドセルの境界に拡張されることが、隣接している場合、サイズ4×4であります 出力グリッドは、入力中にASCII文字の8×8の行数でオフセットaし、入力から「道路」オーバーレイbなどを 入力 a=[[a,b,a],[b,a,b],[a,b,a]] b=[[1,1,1],[2,0,1],[2,0,0]] 出力: ステップ1:グリッド(入力の8x8表現a) aaaaaaaabbbbbbbbaaaaaaaa aaaaaaaabbbbbbbbaaaaaaaa aaaaaaaabbbbbbbbaaaaaaaa aaaaaaaabbbbbbbbaaaaaaaa aaaaaaaabbbbbbbbaaaaaaaa aaaaaaaabbbbbbbbaaaaaaaa aaaaaaaabbbbbbbbaaaaaaaa aaaaaaaabbbbbbbbaaaaaaaa bbbbbbbbaaaaaaaabbbbbbbb bbbbbbbbaaaaaaaabbbbbbbb bbbbbbbbaaaaaaaabbbbbbbb bbbbbbbbaaaaaaaabbbbbbbb bbbbbbbbaaaaaaaabbbbbbbb bbbbbbbbaaaaaaaabbbbbbbb bbbbbbbbaaaaaaaabbbbbbbb bbbbbbbbaaaaaaaabbbbbbbb aaaaaaaabbbbbbbbaaaaaaaa aaaaaaaabbbbbbbbaaaaaaaa aaaaaaaabbbbbbbbaaaaaaaa aaaaaaaabbbbbbbbaaaaaaaa aaaaaaaabbbbbbbbaaaaaaaa aaaaaaaabbbbbbbbaaaaaaaa aaaaaaaabbbbbbbbaaaaaaaa aaaaaaaabbbbbbbbaaaaaaaa ステップ2:で表される道路でオーバーレイするb: aaaaaaaabbbbbbbbaaaaaaaa a@@@@@@@@@@@@@@@@@@@@@@a a@@@@@@@@@@@@@@@@@@@@@@a a@@@@@@@@@@@@@@@@@@@@@@a a@@@@@@@@@@@@@@@@@@@@@@a a@@@@@@@@@@@@@@@@@@@@@@a a@@@@@@@@@@@@@@@@@@@@@@a a@@@@@@abbbbbbbba@@@@@@a bb####bbaaaaaaaab@@@@@@b bb####bbaaaaaaaab@@@@@@b bb####bbaaaaaaaab@@@@@@b bb####bbaaaaaaaab@@@@@@b bb####bbaaaaaaaab@@@@@@b …

6
2つの弦の十字形の印刷
同じ長さであることが保証された2つの文字列のセットが与えられた場合、それらの十字を印刷します。 十字クロス次のように2つの文字列が得られます。 2番目の文字列の2番目の文字を生成し、次に最初の文字列の最初の文字を生成します。 2番目の文字列の最初の文字を生成し、次に最初の文字列の2番目の文字を生成します。 各文字列の最初の文字を破棄します。 文字列に複数の文字が含まれている場合は、手順1に戻ります。 たとえば、2つの文字列が Truck Tower クリスクロスはあります oTTrwroueuwcrcek 次の図に示すように。 各色は十字交差の異なる反復を表します。数字は、対応する文字のインデックスを出力に示します。

8
テコンドーは好きですか?
チェ・ホン・ヒは2002年6月15日に名誉ある83歳で亡くなりました。彼はテコンドーを設立しました。 彼の死から15年後、私はテコンドーのマスターになりたいです。今こそ輝く時です! 仕事 文字列を指定すると、テコンドーバージョンを出力する必要があります。 ルール 有効な入力により、空でない文字列/文を受け取ります 各タイトル(大文字と小文字は区別されません)は、改訂されたローマ字表記に置き換える必要があります。 , *side kick*私はサイドキックをするのが好きなので、文の最後に追加する必要があります。 この変更された文を文字列として出力する必要があります。 これは、答えのバイト数を最小限に抑えることを目的としたコードゴルフです 例 "I am a Student and I do Taekwondo twice a week" => "I am a Geup and I do Taekwondo twice a week, *side kick*" "I am a Teacher willing to be a President" => "I am …

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 = …

4
アリスの序数書式
前書き Aliceは、Martin Enderによる2次元言語で、2つの異なる実行モード、cardinalとordinalがあります。命令ポインタがミラー(または)を通過すると、1つのモードから別のモードに切り替わります。/\ この課題では、コマンドが文字列を操作し、命令ポインターが斜めに移動して、コードの端に対して跳ねる序数モードに焦点を当てます。 通常モードでのみ動作する単純なプログラムは、次の例のように、非常にコンパクトなスタイルで記述できます。 /fbd/ @aec\ ここでIPは、最初のセルが東に行くから枢機卿モードで起動し、第1のミラーを透過し、斜めに移動し、バウンス、コマンドの実行を開始するa、bとc。それは、それは他のミラーに向けて南に行くと、その後、西に向けたバックをバウンスコマンドに遭遇した起動可能北東ミラーに遭遇したd、e、f、そして最後に@、プログラムを終了します。 この種の構造は非常にコンパクトですが、記述と保守が容易ではありません(単一のコマンドを追加すると、ほとんどのコードの順序を変更しなければならなくなる可能性があります)。書式設定を手伝ってください。 タスク コマンドのシーケンスがあり、各コマンドが単一の印刷可能なASCII文字である場合、シーケンスの前半が2行目の最初の文字から始まり、常に右に向かって斜めに移動できるように、コマンドを2行に並べ替えます。後半は残りの文字を右から左に読みながら読むことができます。ミラーと終了記号については心配しないでください。自分で追加します。 したがって、たとえば、入力abcdefを指定すると、出力する必要があります fbd aec 入力が奇数長の場合、遭遇するコマンドのシーケンスが同じままである限り、どこかに単一のスペース(Aliceでは何もしない)を追加する必要があります。また、長さが1文字だけ異なる2つの行を出力するように選択することもできます。その場合、短い方の行の終わりに1つのスペースがあると見なされます。 ルール これはcode-golfであり、バイト単位での最短の答えが勝ちます! デフォルトの入出力メソッドのいずれかを介して入出力できます 入力は、1行の印刷可能なASCII文字で構成されます 出力では単一の末尾改行が許可されます プログラムの一部の出力は、Aliceプログラムとして実行すると、完全に正しい動作にならない場合があります(たとえば、パディングスペースが文字列リテラル内に挿入されている場合)。あなたはこれらの状況に自分自身を心配する必要はありません 標準の抜け穴は禁止されています テストケース --Input abcdef --Output fbd aec --Input 123 --Output 2 13 OR 31 2 OR 3 12 OR 32 1 --Input O --Output O OR O --Input "Hello, …

13
独自の赤と黒を作成する
レミゼラブルの音楽的な演奏では、「赤と黒」と呼ばれる曲が登場します。ここにその曲の一部があります: 赤-怒れる男の血! ブラック-昔の暗闇! 赤-明け方の世界! ブラック-ついに終わる夜! ソース。 あなたの仕事は、入力を鳴り響く「赤と黒」の国歌にすることです。 入力 改行で区切られたテキスト、または同様の適切なテキスト入力。例えば、 The blood of angry men! The dark of ages past! A world about to dawn! The night that ends at last! 空の入力は未定義です(範囲外)。 出力 入力の長さ(行数、入力配列の長さなど)が奇数の場合、何も出力しないか、誤って出力します。あなたの提出物はエラーを出力しないか、正しい出力を出力しようとしないかもしれません。 それ以外の場合は、入力をRed / Black歌詞に変更します。行頭の大文字を小文字に変換します。Red奇数行の前にプラス区切り文字を追加し、偶数行の前にBlack(可視)区切り文字を追加します。区切り文字もスペースで囲む必要があるため、出力は混雑していないように見えます(そしてゴルフされていません;))。 これで出力が得られました。 テストケース 出力区切り文字は-です。 In: The blood of angry men! The dark of ages past! …

10
弦の回転対称性
ローテーションは、「文字列を2つに分割し、その順序を逆にすることによって行われます」。オブジェクトは、その操作を適用した後でオブジェクトが変更されていない場合、操作の下で対称的です。したがって、「回転対称性」とは、「回転」後も文字列が変化しないという事実です。 sからaまでの文字のみで構成される空でない文字z列を指定すると、文字列の回転対称性の最高次数が出力されます。 テストケース: input output a 1 abcd 1 abab 2 dfdfdfdfdfdf 6 これはコードゴルフです。バイト単位の最短回答が優先されます。標準の抜け穴が適用されます。

11
次数nまでの可変グループのすべての組み合わせを作成する
仕様 与えられたm変数は、次までのすべての組み合わせを作成しますn。例えば、 2つの変数(aおよびb)を順序にマッピングする出力は次の1ようになります。 a b ab 2つの変数(aおよびb)を順序にマッピングする出力は次の2ようになります。 a a 2 b b 2 ab a 2 b ab 2 a 2 b 2 2つの変数(aおよびb)を順序にマッピングする出力は次の3ようになります。 a a 2 a 3 b b 2 b 3 ab a 2 b a 3 b a 3 b 2 ab 2 ab 3 a …

4
等しいアウトブラケットタイプ
この質問に基づいてい ます。 文字列が与えられたら、各ブラケット()[]{}<>を適切なタイプのブラケットに置き換えて、ブラケットが一致し、ネストされたブラケットが次のように循環するようにします。 一番外側のものは () 直接の中にある()はずです[] 直接の中にある[]はずです{} 直接の中にある{}はずです<> 直接の内側に<>なり()、再び(サイクル) ブラケット以外の文字はすべて、そのままにしておく必要があります。開き角括弧は、あるタイプの開き角括弧にのみ置き換えられ、閉じ角括弧は閉じ角括弧に置き換えられます。 入力は常にこれを可能にします。これは、タイプが無視された場合にブラケットが正しく一致することを意味します。だから、{ab<)c]有効な入力ですが、ab)(cdかab((cdではありません。 例: 2#jd {¤>. = 2#jd (¤). abcdef = abcdef (3×5+(4-1)) = (3×5+[4-1]) <<<>><<>><<<<<<>>>>>>> = ([{}][{}][{<([{}])>}]) この方法での入力のネイティブ変換(言語の自動構文)の使用は許可されていません。 いつものように:最短のコードが優先されます。

6
歌う天使を印刷する
お祭りのテーマに沿って、キャロルの歌う天使を可能な限り短いコードで印刷します。天使はホームレスのためにお金を集めているので、要求に応じて利用可能な以下の3曲すべてを歌うことができなければなりません。彼女が歌えることを示すために、歌のタイトルを吹き出し内に配置する必要があります。この曲名はユーザーが入力します。例は次のとおりです。 マリア様 ジングルベル 静かな夜 入力: タイトル:3曲のうち1曲。 出力: ____________ (\ ___ /) / \ ( \ (‘o‘) / ) / \ ( ) < ( ‘> <’ ) \ / / \ \____________/ / \ ‘ – “ - ‘ 歌う天使の結果を「Silent Night」という曲と一緒に貼り付けてください。 ふきだしルール: 吹き出しのフレームの長さは、常に12アンダースコアにする必要があります。 曲のタイトルは常に2行目から始める必要があります。 曲のタイトルは、常にバブル内の3つのアンダースコアスペースで始まる必要があります。 123456789... (\ ___ /) / …

2
2Dダンジョンクローラー
プログラムは、次のように複数行の文字列を取る必要があります。 ############# # # # p # # # ############# pプレイヤーで#あり、ブロックです。 ターミナルの下には、次のような入力行があります。 How do you want to move? プレーヤーlがブロックがないときに左に歩く必要があると入力した場合、それ以外の場合、ブロックがあるときは通過できず、もちろん移動しません。ターミナルの出力を更新する必要があります(および以前の出力がクリア/上書きされました): ############# # # # p # # # ############# 彼はl左、r右、u上、d下のどちらでも入力できます。 入力は常に複数行になりますが、完全な長方形にスペースが埋め込まれるとは限りません。さらに、ハッシュは文字列のどこにでも置くことができ、常に互いに接続されているわけではありません。例えば: ## ## # # ## p # 有効なダンジョンです。(各行の末尾にスペースがないことに注意してください) プレイヤーがストリングの外に出た場合、彼は表示される必要はありません。しかし、彼が後で戻ってきた場合、彼は再び表示される必要があります。 そして、「外」の境界文字列がされているlength(longest_line)ことにより、number_of_lines1行が右側のスペースで埋めていない場合でも、長方形、そう、その場所は、範囲外とみなされていません。以前のダンジョンを使用した例: ## ## # #p ## # 2行目には、pが存在するスペースがありませんでしたが、それは問題ではありません。 最後に、プログラムは入力を受け取って永久にループする必要があります。 テストケース テストケース1: …

11
ワイルドカードシーケンスに一致するすべての正方形[終了]
休業。この質問には詳細または明確さが必要です。現在、回答を受け付けていません。 この質問を改善してみませんか?詳細を追加し、この投稿を編集して問題を明確にしてください。 3年前休業。 これは、2016 ARMLコンテストチーム問題#6の一部に触発されました。 ここに課題があります: 数字と別の文字のシーケンスである「ワイルドカードシーケンス」が与えられます。文字列は、次の疑似コードによってこのワイルドカードシーケンスと一致します。 w = wildcard s = string # s matches w iff for all 0 >= i > wildcard.length, w[i] == '?' or s[i] == w[i] どこ '?' お好みのキャラクターです。 正規表現に関しては、を想像し'?'てみてください'.'。 問題は、10進数の文字列表現がこのワイルドカードシーケンスと一致するすべての平方数(要件は最大100万個)を見つけることです。「ワイルドカード文字」は、明らかに数字でない限り、任意のASCII文字を使用できます。 たとえば、4096一致4**6します4*9*が、4114どちらにも一致しません。 入力 入力は、正規表現に一致するシーケンスとして与えられ[0-9?]+ます。これは、ASCIIの文字列、文字配列、または文字のバイト配列です。 出力 出力は、完全な正方形であり、ワイルドカードシーケンスと一致する、数値の任意のリスト/セット/配列になります。 有効な入力の例: 1234567*90 1234567?90 1234567u90 ['1', '2', '3', '4', …

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