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

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

20
出力キーストローク
任意のプログラミング言語で、入力を受け取り、キーボードで入力されるテキストをアニメーション化するプログラムを作成します。 キーボードでの真のタイピングをシミュレートするには、各文字間の遅延を変化させる必要があります。遅延は0.1, 0.1, 0.5, 0.1, 0.1, 0.5 ...、最後の文字が印刷されるまでの秒数です。最終出力は画面に残されます。 テキストを新しい行に印刷できないようにするには、現在のテキスト行を上書きする必要があります。 例、入力 "Hello、PPCG!Goodbye Earth!" 次のアニメーションが生成されます(gif-makerのサンプリングレートが低かったため、実際の結果はわずかに異なります)。 これはコードゴルフであるため、バイトの最小量が勝ちます。

6
KeyPad Code to Text!
入力として文字列と配列が与えられた場合、タスクは、典型的なモバイルキーパッドで入力されたときに入力文字列が印刷するテキストを出力することです。モバイルキーパッドでは、ボタンをn回押すことで文字が入力されます。nは、ボタンのラベル上の文字の位置です。したがって、22出力する必要がありますb。 ルール ヘルパー配列には文字マップ([" ",".,!","abc","def","ghi","jkl","mno","pqrs","tuv","wxyz"])が含まれます。これはいくつかのバイトを節約するために与えられます。 #シンボルは、ケースを切り替えます。最初のケースは低くなります。だから、2#3出力すべきaD。 0スペースを追加します。したがって、202出力する必要がありますa a。 入力文字列には、同じ数字ボタン上にある新しい文字を開始するためのスペース()があります。aa入力例では、入力文字列はになります2 2。 入力文字列は常に有効なキーパッドコードであることが保証されています。 入力 あなたの言語がサポートするどんな方法でも入力を受け取ることができます。 出力 結果は任意の方法で出力できます。機能returnも許可されています。 テストケース #4440555#666888330#999#66688111 -> "I Love You!" #6#33777 7779990#222#4477744477778627777111 -> "Merry Christmas!" #44#27 79990#66#3390#999#332777111 -> "Happy New Year!" これはcode-golfなので、バイト単位の最短コードが勝ちです!

11
私はドルでのみ支払います
タイトルとして-個別にではあるが-ヒントとして、私はドルでのみ支払う。 チャレンジ 入力として文字列をとる関数/プログラムを作成します。これは、記号が前に付いた金額です。ex) £4.99。次に、同じ金額を米ドルに換算して返します。 入力 入力として文字列を取得します。通貨記号の後に小数点以下2桁の数字が続きます(これは可能性があります.00)。数字を区切る小数点.および/またはコンマがあります,。次の通貨記号が入力に含まれます。 ユーロ:€英ポンド:£ 人民元:¥ また、通貨に応じてコンマまたは小数点があり、「ドル」を「セント」から分離します。 ユーロ:#。###、##英ポンド:#、###。## 元人民元:#、###。## 出力 入力を、シンボルで決定された通貨からUSDに変換し、小数点以下2桁に丸めます。出力はの形式$#,###.##になり、必要に応じて出力の左側にさらに数字があります(編集:これは、入力と同様に、出力に任意の数のコンマがあることを意味します)。使用する為替レートは以下のとおりです。 入力には、上記(€ £ ¥ . ,)の1つだけであるシンボルが含まれていると想定できます。これは常に有効です。 為替相場 €1 : $1.10 £1 : $1.37 ¥1 : $0.15 例 Input: €1,37 £4.00 ¥2,782,122.78 Respective output: $1.51 $5.48 $417,318.42 最後の言葉 上記の記号(€、£、¥)のいずれかを使用する場合、1バイトとしてカウントできます。 これはコードゴルフなので、バイト単位の最短コードが勝ちです!
14 code-golf  math  string 

19
連続した文字の実行をnの長さに切り捨てます
チャレンジ 入力文字列と整数nを指定すると、連続する文字の実行を最大長nまで切り捨てます。文字は、特殊文字を含め、何でもかまいません。関数は大文字と小文字を区別する必要があり、nの範囲は0から無限です。 入力/出力の例: f("aaaaaaabbbccCCCcc", 2) //"aabbccCCcc" f("aaabbbc", 1) //"abc" f("abcdefg", 0) //"" f("aaaaaaabccccccccCCCCCC@", 4) //"aaaabccccCCCC@" 得点 スコアリングは、使用されるバイト数に基づいています。かくして function f(s,n){return s.replace(new RegExp("(.)\\1{"+n+",}","g"),function(x){return x.substr(0, n);});} 104ポイントになります。 ハッピーゴルフ! 編集:言語の制限を削除しましたが、私はまだJavaScriptの回答を見たいです
14 code-golf  string 

16
最短の固有部分文字列
(STDINでは、コマンドライン引数として、または関数引数として)2つの異なる空ではない文字列を指定し、2番目の部分文字列ではない最初の文字列の最短部分文字列を見つけて返します。そのような部分文字列が存在しない場合は、空の文字列を返すか、元の文字列の部分文字列ではない文字列を返すか、例外をスローできます。関数から戻る場合、この場合はnull(または未定義、Noneなど)を返すこともできます。複数のこのような部分文字列が最短で結び付けられている場合、それらのいずれかを返すことができます。 文字列は、印刷可能な任意のASCII文字で構成できます。 STDINで指定された入力は、各行に1つの文字列で指定されます。リクエストに応じて、入力の最後に単一の空行を追加できます。 これはコードゴルフであるため、最短の有効なプログラムが勝ちます。 いくつかのテストケース 入力: STRING ONE STRING TWO 出力: E 入力: A&&C A&$C 有効な出力: && &C 入力: (2つのランダムに生成された80文字の文字列) QIJYXPYWIWESWBRFWUHEERVQFJROYIXNKPKVDDFFZBUNBRZVUEYKLURBJCZJYMINCZNQEYKRADRYSWMH HAXUDFLYFSLABUCXUWNHPSGQUXMQUIQYRWVIXGNKJGYUTWMLLPRIZDRLFXWKXOBOOEFESKNCUIFHNLFE すべての有効な出力: AD BJ BR CZ DD EE ER EY EY FF FJ FW FZ HE IJ IN IW JC JR JY KL KP KR KV LU MH MI …
14 code-golf  string 

6
未ソート配列にセミソートを挿入
PPCG Incの最初の日へようこそ。最新のジュニアアシスタントドキュメントソーターとして、送信されたすべてのドキュメントがアルファベット順にアーカイブされていることを確認する責任があります。猿ができるのはとても簡単です。まあ、比phor的に言えば、私たちはそれを行うために猿を雇ったのです。何だと思う?サルはアルファベットを理解していないことがわかります。とにかく、今の混乱を修正する時間がないので、状況を悪化させないようにしてください。その後、それを取得します!おなかがすいたら、ウォータークーラーのそばにバナナがあります。幸運を! 仕事内容 入力 文字列のリスト(アーカイブ)と、そのリストに追加する必要のある文字列(ドキュメント)を受け取ります。 すべての文字列には、大文字、小文字、スペースのみが含まれます 文字列は常に文字で始まり、文字で終わる 仕事 ドキュメントのターゲット位置を決定します:アーカイブ内で受け取るべき位置。目標位置は次のように決定できます。 各ポジションについて: 文書内のアルファベット順で、その位置の前のアーカイブ内の文字列の量を数えます 文書内のアルファベット順で、その位置の後のアーカイブ内の文字列の量を数えます 上記の2つのカウントの合計としてポジションのスコアを定義します ドキュメントの目標位置は、最高スコアの位置です 同点の場合、最高スコアのすべてのポジションがターゲットポジションとして等しく有効です。1つだけを選択する必要があります。 ソートする場合: 大文字と小文字は同等です 文字の前にスペースが来る 出力 任意の形式でドキュメントが追加されたアーカイブ または 0ベースまたは1ベースのインデックスでのドキュメントのターゲット位置 職務評価 最少バイトが勝ちます! I / Oの例 Archive: Applebuck Season Friendship is Magic The Ticket Master Griffon the BrushOff Boast Busters Bridle Gossip Document: Dragonshy Position scores (0-based index): 0: …

7
ひもを風車に変える
このサイトのコードは急速に枯渇しています。再生可能なストリングに投資する必要があります。そのため、文字列を取得して風車に変換するプログラムを作成する必要があります。 チャレンジ 簡単な風車のひもを例に取りましょう。文字列を取りますabc。ピボットは、この場合、中央の文字、ですb。文字列は3文字の長さであるので、すべての出力は次のようになります正確に背の高い3行3つの文字幅。手順1の出力を次に示します(空白に注意してください)。 abc 次のステップに進むには、ピボットを中心に各文字を時計回りに回転させます。これがステップ2です。 a b c 手順3〜8は次のとおりです。 a b c a b c cba c b a c b a c b a そして、9番目のステップで、元の文字列に完全な円を描きます。 abc bずっと同じ場所に留まったことに注意してください。これはb、ピボット文字であるためです。入力として文字列を受け取り、プログラムが終了するまでこのシーケンスを繰り返し出力するプログラムまたは関数を作成する必要があります。 明確化 すべての入力文字列の文字数は奇数です。(すべての風車がピボットを持つように) チャレンジを簡単にするために、すべての文字列には大文字と小文字のアルファベットのみが含まれます。 出力はlen(input_string)文字の幅と高さでなければなりません。 永遠に回転とループを続ける限り、シーケンスのどのステップから始めても構いません。 より多くのテストIO: 投稿はすでにかなり長いため、「windmill」の出力へのリンクを次に示します。 サイドノート: これは風車であるはずなので、小さな時間遅延または各ステップ間のユーザー入力でアニメーション化するボイラープレートコードを含めると素晴らしいでしょう。ただし、一部の言語には時間の組み込み機能がないため、これは必須ではありません。提出物の競合部分は、できるだけ早くシーケンスを印刷できます。

6
略語の一般化
単語のリストとその略語の入力が与えられた場合、略語を形成できるパターンを出力します。 の入力例を見てみましょう potato ptao puzzle pzze 例として(つまり、の略語potatoはptaoであり、の略語puzzleはであるpzze)。 取得するためにすべての可能な方法を検討ptaoからをpotato。可能な方法の1つは、最初、3番目、4番目、6番目の文字を取得すること 1346です。しかし、以来tとo言葉に複数回表示され、そこに生成するために、複数の他の可能な方法がありますptaoからはpotato:1546、1342、と1542。 同様に、音符pzzeから生成することができるpuzzleのいずれかと1336、 1346、1436、1446。これら2つの略語に共通する唯一のパターンは1346;です。したがって、それはこの入力の出力でなければなりません。複数の可能なパターンが可能な場合、それらのいずれか、一部、またはすべて(少なくとも1つ)を出力できます。 あなたはそれを仮定するかもしれません: 入力語と略語には小文字のみが含まれます。 入力に少なくとも1つの単語/略語のペアがあります。 すべての略語が、対応する単語から形成される可能性があります。 すべての略語を形成する少なくとも1つのパターンが常に存在します。 各単語の最大長は9文字です。 入力は、次のいずれかとして取得できます。 2次元配列/リスト/タプルの配列/など。 [[word, abbr], [word, abbr], ...] フラットな1次元配列/リスト [word, abbr, word, abbr, ...] 小文字ではない単一の文字で区切られた単一の文字列 "word abbr word abbr" ハッシュ/連想配列/など {word => abbr, word => abbr, ...} これらの入力オプションのいずれでも、単語/略号の順序を入れ替えることができます(投稿の入力形式を完全に説明してください)。 出力は、単一の数字、非数字で区切られた文字列、または配列/リスト/タプル/などとして指定できます。数字の。 これはcode-golfであるため、バイト単位の最短コードが優先されます。 テストケース(複数のパターンが機能する場合、1つ以上の結果を出力するだけでよいことに注意してください): In Out -------------------------------------------------------- …
14 code-golf  string 

2
食料品店のマイクロ管理
あなたはヒップな新しい食料品店Half Foodsの従業員であり、感謝祭の クリスマスイースターの前日です。食料品を手に入れるために急いでいる顧客で店がいっぱいになるので、店は皆を適切な行に送るために交通マネージャーを必要とします。怠zyなので、これを自動化して、すべての七面鳥の ハムを食べる前にデリにぶつかることができます。ただし、携帯電話だけを持っているので、長いプログラムをコーディングするのは非常に苦痛です。そのため、忍者コードゴルフのスキルを打ち破る必要があります。 チャレンジ 食料品店を2次元のグリッドで視覚化します。分析するサンプルグリッドを次に示します。 e s s s Y # # #s # #s # #s # #s # #s # #s #s #s # #3 #1 #4 # x x x x グリッドはから始まりe、ストアの残りの部分への「アウトレット」を表します。世代ごとに、グリッド内のすべてのアウトレットは、s真下に買い物客()を生成します。買い物客はあなたに届くまで世代ごとに下降します(Y)。買い物客があなたと同じ列に到達したら、買い物客が最も少ない行の先頭に買い物客をテレポートする必要があります。買い物客は、で行に移動するとすぐに行に移動し、Y間に世代はありません。行は#sで表されます。sの後の列#は行です。買い物客は、(出口で表される行の最後まで行くx)、その後間の乱数に変わる1と5。世代ごとに、番号の付いた買い物客を減らす必要があります1-買い物客が到着すると0、彼らはチェックアウトを済ませ、店を出ます。 このようなグリッドの入力が与えられたら、次世代の食料品店を出力します(すべての買い物客を同時に下に移動し、買い物客をリダイレクトし、終わったら退場させます)。 サンプル 入力: e Y # # # # # # # # # …
14 code-golf  string  grid 

18
文字列の10進数の乗算
文字列と10進数の2つの入力がある場合、文字列にその数値を掛けて出力します。 キャッチは、数値が浮動小数点数または整数になる可能性があることです。 文字列floor(n)timeを出力してから、最初のfloor((n-floor(n))*len(string))文字を再度出力する必要があります。 その他の注意事項: 入力は常にフロートではなく、intである可能性があります。したがって、1.5、1、および1.0がすべて可能です。ただし、常にベース10になります。例外が必要な場合はコメントしてください。 文字列入力には、空白、引用符、その他の文字が含まれる場合があります。ただし、改行や制御文字はありません。 直接の文字列の繰り返しのためのビルトインはなく、Pythonのような文字列の乗算'a'*5も許可されています。ただし、文字列の追加は許可されています。 テストケース: 入力はコンマとスペースで区切ります。 test case, 1 -> test case case, 2.5 -> casecaseca (will add more later), 0.3333 -> (will(space) cats >= dogs, 0.5 -> cats > 最終ノート: 組み込みの文字列乗算または繰り返し関数を使用する多くの答えがあります。これは許可されていません。ただし、@ VTCの答えは有効です。これは、文字列を乗算せず、フロート入力のみを乗算するためです。したがって、最終的なルールは次のとおりです。文字列を直接乗算する場合、実行できません。
14 code-golf  string 

6
手紙、動く!Pt。2
最初の手紙、Get Moving!非常に人気がありましたが、参加は限られていました。これは簡単に解決できますが、うまくいけばゴルフにいくつかのトリックが含まれます。 小文字のみの文字列が与えられます。各文字について、アルファベットmの位置で、最後からm番目の文字になるように移動します。mの値が文字列の長さよりも長い場合は、それを一番前に移動します。完全に変換された文字列のみを出力します。 例: 「キリン」 「g」はアルファベットの7番目の文字です。すでに後ろから7番目の文字なので、そのままにしておきます。 「i」は9番目の文字です。9は単語の長さよりも大きいため、先頭に移動し、文字列は igraffe 「r」は18番目の文字で、「i」のように先頭に移動します。 rigaffe 「a」は最初の文字で、最後まで行きます: rigffea 「f」は6番目の文字で、後ろから6番目になります。 rfigfea 次の 'f'は6番目の文字でもあるため、後ろから6番目に移動します。 rffigea 「e」は5番目の文字で、後ろから5番目に移動します。 rfefiga "花" 'f'(6)=> flower 'l'(12)=> lfower 'o'(15)=> olfwer 'w'(23)=> wolfer 'e'(5)=> weolfr 'r'(18)=> rweolf "パイナップル" 'p'(16)=> pineapple 'i'(9)=> ipneapple 'n'(14)=> nipeapple 'e'(5)=> nipaepple 'a'(1)=> nipepplea 'p'(16)=> pnipeplea 'p'(16)=> ppnipelea 'l'(12)=> lppnipeea 'e'(5)=> …

5
アルファベット全体
アルファベット全体 この課題では、アルファベットの文字を覚えるのに苦労します。これを回避するには、アルファベットが表示されるまでアルファベットを上下します。 コードを移植可能にするため、文字ブロックでコードを記述します。大半の文字ブロックが盗まれたため、文字ブロックの数は限られているため、コードをできるだけ短くする必要があります。 例 入力/出力ペアは空白行で区切られています: Ac ABc Ad ABcd fA fedCBA adB abcdcB Hello, World! HGfefghijkllmno, WVUTSrqpopqrqponmlkjihgfed! チャレンジ あなたの目標はA-Za-z、それらの間にアルファベットのすべての中間文字()で隣接する文字を連鎖することです。大文字化が異なる場合、大文字化は途中で変換する必要があります。資本化を途中で均等に変換できない場合、途中で分割されます。文字がアルファベット文字でない場合、変換は実行されません。 勝ち これはコードゴルフなので、バイト単位の最短コードが勝ちです! -10%ボーナス:コードが数字を連結する場合
14 code-golf  string 

12
そして、すべての人々が言っ​​た...
目的文字[またはを含まないテキストの入力を前提として]、次のアクションを実行します。 すべてのインスタンスのためのAmen少なくとも一つの大文字で(そのすべてのインスタンスAmenを除くamen)、同じことを出力Amen(時価総額を保持)。 /all the people said[?: ]/i(正規表現である)のすべてのインスタンスに対して、出力も行いますAmen(どんな場合でも問題ありません)。 すべての出力の後に、改行、スペース、無などの定数セパレーターを選択できます。 これはcode-golfであるため、バイト単位の最短プログラムが優先されます。 IOの例 Input: I said AMEN! AMEN, PEOPLE! Output: AMENAMEN ; any separator is fine, I choose none. Input: amen amen amen amen Output: ; nothing Input: ; empty Output: ; nothing Input: *blah blah blah* And all the people said? Output: …

22
文字列のジップと並べ替え
文字列のリストを指定して、各位置の各文字列から文字を取得し、ASCII順序で並べ替えて、出力文字列に順番に追加することにより、単一の文字列を出力します。つまり、n入力文字列の場合、n出力の最初の文字は序数でソートされた各入力の最初の文字になり、出力の2番目のn文字は序数でソートされた各入力の2番目の文字になります。オン。文字列はすべて同じ長さであり、少なくとも1つの文字列があると想定できます。すべての文字列は、ASCII印刷可能文字(序数32-127)のみで構成されます。 Pythonでのリファレンス実装(オンラインで試してみてください): def stringshuffle(strings): res = '' for i in range(len(strings[0])): res += ''.join(sorted([s[i] for s in strings],key=ord)) return res 例: "abc","cba" -> "acbbac" "HELLO","world","!!!!!" -> "!Hw!Eo!Lr!Ll!Od" ルール 標準的な抜け穴は禁止されています これはcode-golfなので、バイト単位の最短回答が勝ちます リーダーボード この投稿の下部にあるスタックスニペットは、a)言語ごとの最短ソリューションのリストとして、b)全体的なリーダーボードとして、回答からリーダーボードを生成します。 回答が表示されるようにするには、次のマークダウンテンプレートを使用して、見出しから回答を開始してください。 ## Language Name, N bytes N提出のサイズはどこですか。スコアを改善する場合、古いスコアを打つことで見出しに残すことができます。例えば: ## Ruby, <s>104</s> <s>101</s> 96 bytes ヘッダーに複数の数字を含める場合(たとえば、スコアが2つのファイルの合計であるか、インタープリターフラグペナルティーを個別にリストする場合)、実際のスコアがヘッダーの最後の数字であることを確認します。 ## Perl, 43 + …
14 code-golf  string 

17
コードゴルフ:フォワードsdrawkcaBフォワードsdrawkcaBフォワードフォワードsdrawkcaB
仕事 ユーザーは文を入力します-単語のみ。整数や句読点など、文字やスペース以外の入力は例外をスローする必要があります:「文は文字のみを使用する必要があります」。 出力にはパターンがあり、一部の単語が反転し、他の単語は正常です。 パターンは通常の単語として始まり、次の2つの単語が逆になり、次の2つの単語が正常になり、パターンが続きます。 単語が正常であり、単語が反転する場所の例を以下に示します。 正常-反転-反転-正常-正常-反転-反転-正常... 入力例 彼女は海岸で貝を売っています 出力例 彼女はEe AeS海岸でaeSシェルを投げます 追加の規則 大文字を使用する場合、最初に投稿した文字に大文字を使用する必要があります。 入力時に最初に投稿された複数のスペースは、1つのスペースに減らす必要があります。たとえばProgramming Puzzles and Code GolfなりましたProgramming selzzuP dna Code Golf 最短コードが勝つ!! ハッピーコーディング...

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