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

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

22
文字列を爆発させる
任意の文字列を指定して、テキストが各対角線に沿って上下に移動する三角形の形式で印刷します。たとえば、の入力は次"Hello World"を出力する必要があります。 d l r d o l W r d o l o W r d l o l l o W r d e l o l H l o W r d e l o l l o W r d l o l o W r …

30
番号の範囲を元に戻す
それが非常に簡単です、数与えられn、範囲を作成0しますn-1。実際、多くの言語がこの操作を組み込みとして提供しています。 次のCJamプログラムは整数を読み取り、そのような範囲を出力します(オンラインで試してみてください!): ri, セパレータなしで数値が出力されることに注意してください。 チャレンジ あなたの仕事は、このプロセスを逆にすることです。範囲を表す文字列を指定すると、その範囲を生成するために使用される数値を返すプログラムを作成する必要があります。 仕様書 番号は区切り文字なしで指定されます。 文字列が有効な範囲を形成すると仮定できます。 範囲に0または1ベースのインデックスを使用できます。 正しい出力が32,767を超えることはないと想定できます(したがって、有効な入力の長さが152,725を超えることはありません)。 正しい出力は常に正であると仮定することができます(したがって、0または負を処理する必要はありません)。 これはcode-golfであるため、最短の競合する回答(バイト単位)が勝ちます。 テストケース 0インデックス付き: 0123 -> 4 0 -> 1 0123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100 -> 101 1インデックス付き: 1234 -> 4 1 -> 1 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100 -> 100

22
街を作って
コーダーは常に配列を退屈な1次元エンティティにフラット化しようとしているので、悲しくなります。 あなたの仕事は、任意の文字列を展開して、素敵な街の空の景色を出力することです。 文字列を考えてみましょう: aaabbbbbccqrrssstttttttPPw 次のようになります。 tt tt bb tt bb tt aabb sstt aabbcc rrssttPP aabbccqqrrssttPPww (はい、はい、文字は都市のスカイラインのように見えるように複製されています)。 入力文字列を取得し、一致する文字(必ずしもアルファベット文字である必要はありません)の各サブセクションを複製し、都市を構築します! 最短のコードバイトが優先されます。 私は実際に要件が決まっていると思っていましたが、いくつかの質問に答えるために: それは地面になければなりません 必要に応じて余分な空を空けることができます(先頭の空白行、周囲の空白スペース)-ただし、建物の間ではありません 文字列内で文字を再利用できます(同じアーキテクチャ、異なる場所) 文字はASCIIであると想定されますが、追加のエンコード(UTF8など)をサポートする文字にはより多くの才能が与えられます

30
同じ数字を逆にして、1からnまでの数字をインターリーブします
簡単なもの: 正の整数を取るN 1000未満、及び出力から整数1のnがから整数でインターリーブNに1。数字を連結して、区切り記号なしで数字が表示されるようにする必要があります。 テストケース: n = 1 11 n = 4 14233241 n = 26 12622532442352262172081991810171116121513141413151216111710189198207216225234243252261 n = 100 110029939849759669579489399210911190128913881487158616851784188319822081218022792378247725762675277428732972307131703269336834673566366537643863396240614160425943584457455646554754485349525051515052495348544755465645574458435942604161406239633864376536663567346833693270317130722973287427752676257724782379228021812082198318841785168615871488138912901191109299389479569659749839921001 これはコードゴルフであるため、各言語のバイト単位の最短の提出が勝ちです。説明が奨励されます。

30
文字列に数字を掛けます!
少し前に、文字列の乗算に関する課題がありました。数値だけでなく文字列も乗算できる方法を示しました。ただし、数字に文字列を適切に掛けることはできません。そうする試みが1つありましたが、これは明らかに間違っています。修正する必要があります! あなたのタスク: 文字列と整数の2つの入力を乗算する関数またはプログラムを作成します。文字列に整数を(適切に)乗算するには、文字列を文字に分割し、各文字を整数に等しい回数繰り返してから、文字を元に戻します。整数が負の場合、最初のステップでその絶対値を使用し、文字列を逆にします。入力が0の場合、何も出力しません(0を掛けたものは何も等しくありません)。 入力: 印刷可能なASCII文字と改行のみで構成される文字列、および整数(負の可能性あり)。 出力: 文字列に整数を掛けたもの。 例: Hello World!, 3 --> HHHeeellllllooo WWWooorrrlllddd!!! foo, 12 --> ffffffffffffoooooooooooooooooooooooo String, -3 --> gggnnniiirrrtttSSS This is a fun challenge, 0 --> Hello World!, 2 --> HHeelllloo WWoorrlldd!! 得点: これはcode-golfであり、最低バイト数が勝ちです!

8
ASCIIアートテキストを読む
Golf meからインスパイアされたASCIIアルファベットで、このチャレンジは(ほぼ)直接の逆です。 仕事: ASCIIアートテキストの文字列を取得し、テキストの内容を通常のASCIIテキストとして出力します。 入力: ASCIIアートテキストの文字列。 入力には、ASCII文字#、スペース、および4つまたは5つの改行のインスタンスのみが含まれます(末尾の改行はオプションです)。すべての行の長さは同じです。(つまり、最後のASCIIアート文字の末尾にスペースが埋め込まれます。)#必要に応じて、入力ではなく他の印刷可能なASCII文字を使用できます。 入力には、ASCIIアート文字A-ZとASCIIアートスペース(空白の5x5ブロック)が含まれます。句読点はありません。ASCIIアートテキストは1行のみです(実際の5行)。末尾または先頭のASCIIアートスペースはなく、隣接するASCIIアートスペースもありません。 文字サイズは5x5文字です。各文字の間には1x5のスペースがあります。単語間のスペースは、5x5の空白ブロックです(もう1つの文字であるため、両側に1x5のスペースがあります)。ASCIIアート文字の間にのみ、末尾または先頭に1x5のスペースはありません。 出力: ASCII文字A-Z+スペースとしてテキストを含む文字列。あなたのソリューションにとって何らかの形で簡単であれば、出力も小文字にすることができます。大文字と小文字を混在させることもできます。 ASCIIアート文字: ### #### ### #### ##### ##### ### # # ##### ##### # # # # # # # # # # # # # # # # # # # # # # # ## ## ##### #### …

30
文字列をチャンクで逆順にする
あなたの仕事は、数字と文字列を与えられた文字列をそのサイズのチャンクに分割し、それらを逆にするプログラムを書くことです。 ルール プログラムは、正の整数とn、s印刷可能なASCIIのみ(空白を含まない)で構成される長さ少なくとも1つの文字列を受け取ります。文字列nの長さがn残りの部分で割り切れない場合、文字列はlengthのチャンクに分割される必要があります。次に、チャンクの順序を逆にして、再びまとめます。 テストケース n s Output 2 abcdefgh ghefcdab 3 foobarbaz bazbarfoo 3 abcdefgh ghdefabc 2 a a 1 abcdefgh hgfedcba 2 aaaaaa aaaaaa 2 baaaab abaaba 50 abcdefgh abcdefgh 6 abcdefghi ghiabcdef これはcode-golfなので、できるだけ少ないバイトを目指してください。
34 code-golf  string 


12
レモンライム文字列
空でない単一行の文字列を取り込むプログラムまたは関数を作成します。スペースを除いて印刷可能なASCIIのみが含まれていると想定できます。 文字列のプレフィックスから作られたレモンやライムに似たASCIIアート菱形の形状を印刷または返します。 入力文字列の長さがn文字であるとします。そして、このような形状で構成されて2N - 1つの縫い合わさASCIIアートの列、各なる2N - 1行。1から数えて、k番目の列はf(k)= min(k、2n-k)文字幅で、入力の最初のf(k)文字のf(k)コピーを含み、縦方向に中央揃えで、単一の空白を持ちます。コピーを分離する行。 たとえば、入力がのLemon場合、出力は次のようになります。 Lemon Lemo Lemo Lem Lemon Lem Le Lemo Lemo Le L Lem Lemon Lem L Le Lemo Lemo Le Lem Lemon Lem Lemo Lemo Lemon 入力がlime出力の場合: lime lim lim li lime li l lim lim l li lime li lim lim …

29
Crazy 8s Code Golf
intervalの間のすべての整数を印刷(a, b)し、シーケンスの8の倍数をランダム(均一に分布し、他の文字に依存しない)、非数値、非空白、印刷可能なASCII文字に置き換えるプログラムを作成します。 すべての場合で0 <a <bと仮定します。 数字に1桁以上ある場合は、置換する文字数が一致していることを確認してください! 例: (1, 16) -> 1 2 3 4 5 6 7 $ 9 10 11 12 13 14 15 n@ (115, 123) -> 115, 116, 117, 118, 119, :F<, 121, 122, 123 (1, 3) -> 1 2 3 非例: (1, 16) -> 1 2 …

28
解放してください!
コードゴルファーとして、私たちは(確かに)リリースすることに慣れていません。そのためには、いくつかのツールが必要になります。 もちろん、新しいリリースのマーケティングを支援するには、素敵で光沢のあるリリースバージョンが必要です。バージョン3.0.0を聞いても興奮しないのは誰ですか? 仕事 あなたの仕事はプログラム/ルーチン/ ...を書いてバージョン番号を増やすことです。 バージョン番号を増やし、「重要度の低い」もの(つまり、パッチバージョン)をリセットする必要があります。 2つの引数を取得します。文字列としての現在のバージョン(「1.0.3」など)と、どちらを更新するかを知るためのインデックス(0または1のインデックス)。 例、0インデックス付き: next-version("1.0.3", 0) # 2.0.0 next-version("1.2.3.4.5", 2) # 1.2.4.0.0 next-version("10.0", 0) # 11.0 next-version("3", 0) # 4 next-version("1", 7) # ERROR next-version("01", 0) # ERROR バージョンは文字列で、各部分は数字で、ドットで区切られています。先頭、末尾、または連続するドット(および数字/ドット以外)は存在できません。バージョン文字列のサイズに制限はありません。 ^[1-9]\d*(\.[1-9]\d*)*$ エラーの場合(最後の2つの例)は未定義の動作です。入力を間違えた場合に起こることは、この課題とは無関係です。 いつものように、標準的な抜け穴は禁止されています。文字列を印刷または返すことができます。

30
ケースの複製と切り替え
目標は、文字列を入力として、各ラテン文字を複製し、大文字と小文字を切り替えます(つまり、大文字が小文字に、またはその逆になります)。 入力と出力の例: Input Output bad bBaAdD Nice NniIcCeE T e S t Tt eE Ss tT s E t sS Ee tT 1!1!1st! 1!1!1sStT! n00b nN00bB (e.g.) (eE.gG.) H3l|@! Hh3lL|@! 入力は、印刷可能なASCIIシンボルで構成されます。 非ラテン文字、数字、特殊文字を複製しないでください。
34 code-golf  string 

14
camelCaseに変換
チャレンジ 先日GoogleのJavaスタイルガイドを読んでいて、アルゴリズムを見つけて任意の文字列をcamelCase表記に変換しました。このチャレンジでは、コードゴルフチャレンジへの非常に競争力のあるJava提出物を作成するときに頭の中でこれらすべてを実行したくないため、このアルゴリズムを実装する必要があります。 注:アルゴリズムを少し調整しました。以下に指定されているものを使用する必要があります。 アルゴリズム 任意の入力文字列で開始し、次の操作をそれに適用します。 すべてのアポストロフィを削除 `' で分割して結果を単語に分割します 英数字でも数字でもない文字 [^a-zA-Z0-9] 両側が小文字に囲まれている大文字。abcDefGhI jk例えば収量abc Def Ghi jk すべての単語を小文字にします。 最初の単語を除くすべての単語の最初の文字を大文字にします。 すべての単語を元に戻します。 その他の注意事項 入力には、印刷可能なASCIIのみが含まれます。 数字が単語の最初の文字である場合は、そのままにして、この単語の他の文字を大文字にしないでください。 入力には常に少なくとも1つの文字が含まれます。 ルール 機能または完全なプログラムが許可されます。 入出力のデフォルト規則。 標準の抜け穴が適用されます。 これはcode-golfなので、バイト数が最も少なくなります。Tiebreakerは以前の提出です。 テストケース 「プログラミングパズルとコードゴルフ」->「programmingPuzzlesCodeGolf」 「XML HTTPリクエスト」->「xmlHttpRequest」 「iOSでIPv6をサポートしますか?」-> "supportsIpv6OnIos" "SomeThing w1th、apo'strophe's and 'punc] tuation"-> "someThingW1thApostrophesAndPuncTuation" 「特別なものなし」->「特別なものなし」 "5pecial ca5e"-> "5pecialCa5e" "1337"-> "1337" 「1337-spEAk」->「1337Speak」 「whatA mess」->「whataMess」 「abcD」->「abcd」 「a」->「a」 …
34 code-golf  string 

21
すべての文字列を出力する
一連の文字を指定すると、それらの文字で構成されたすべての文字列が出力されます。(これはセットのKleeneスターです。)たとえば、の{'a','b'}場合、文字列は次のとおりです。 '', 'a', 'b', 'aa', 'ab', 'ba', 'bb', 'aaa', 'aab', ... 入力:明確な文字の空でないコレクションa..z。これらは、文字または単一文字の文字列です。 出力:それらの文字のすべての文字列、任意の順序、繰り返しなし。文字のリストを文字列として使用できます。 これは無限のリストなので、次の方法で出力できます。 ますます多くの文字列を書いて永遠に実行します。これらの文字列は、フラットに区切られた任意の形式で記述できます。つまり、各文字列がどこで終了するかはわかりますが、文字列はグループに分割されません。 n入力として数値を取り、n任意のフラットな分離形式で最初の文字列を出力します ジェネレーターオブジェクトから各文字列を順番に取得する 無限のオブジェクトを生成する 一部の文字列に到達することなくセットから無限に多くの文字列を生成することが可能であるため、メソッドが最終的に出力内のすべての文字列を生成することを確認してください。 あなたはそれを出力することはできません n与えられたth文字列の生成n 特定の文字列がセットに属するかどうかを決定するメンバーシップオラクルを提供する ビルトインは許可されていますが、ほとんどビルトインに依存しているものよりも、操作自体を実装する回答に注意を払うよう投票者にお願いします。 コードスニペットを表示 var QUESTION_ID=74273,OVERRIDE_USER=20260;function answersUrl(e){return"https://api.stackexchange.com/2.2/questions/74273/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 r=e.size,a=s.size;return r-a});var s={},r=1,a=null,n=1;e.forEach(function(e){e.size!=a&&(n=r),a=e.size,++r;var t=jQuery("#answer-template").html();t=t.replace("{{PLACE}}",n+".").replace("{{NAME}}",e.user).replace("{{LANGUAGE}}",e.language).replace("{{SIZE}}",e.size).replace("{{LINK}}",e.link),t=jQuery(t),jQuery("#answers").append(t);var o=e.language;/<a/.test(o)&&(o=jQuery(o).text()),s[o]=s[o]||{lang:e.language,user:e.user,size:e.size,link:e.link}});var t=[];for(var o in s)s.hasOwnProperty(o)&&t.push(s[o]);t.sort(function(e,s){return e.lang>s.lang?1:e.lang<s.lang?-1:0});for(var c=0;c<t.length;++c){var i=jQuery("#language-template").html(),o=t[c];i=i.replace("{{LANGUAGE}}",o.lang).replace("{{NAME}}",o.user).replace("{{SIZE}}",o.size).replace("{{LINK}}",o.link),i=jQuery(i),jQuery("#languages").append(i)}}var ANSWER_FILTER="!t)IWYnsLAZle2tQ3KqrVveCRJfxcRLe",COMMENT_FILTER="!)Q2B_A2kjfAiU78X(md6BoYk",answers=[],answers_hash,answer_ids,answer_page=1,more_answers=!0,comment_page;getAnswers();var …
34 code-golf  string 

13
過去の素数の思い出
素数考えるPベース10に書き込まれ、メモリのpは厳密未満異なる素数の数として定義されるPのサブストリングとして含まれるP。 チャレンジ 入力として負でない整数nが与えられた場合、pがメモリnを持つような最小の素数pを見つけます。つまり、正確にn個の厳密に小さい素数を部分文字列として持つ最小の素数を見つけます。 入力 入力は、任意の標準形式で取得できます。出力がオーバーフローしないように、最大nまでの入力をサポートする必要があります。参考として、4294967291は32ビットで最大の素数です。 出力 出力はSTDOUTに書き込まれるか、関数から返されます。 例 数値2にはサブストリングとして厳密に小さい素数が含まれていないため、メモリ0があります。 113という数字は、メモリ3を持つ最小の素数です。3、13、および11という数字が唯一の素数サブストリングであり、113より小さい素数には、サブストリングとして正確に3つの素数が含まれません。 n = 0で始まるシーケンスの最初の10項は次のとおりです。 2, 13, 23, 113, 137, 1237, 1733, 1373, 12373, 11317 注意 これは、OEISのA079397です。 リーダーボード var QUESTION_ID=55406,OVERRIDE_USER=20469;function answersUrl(e){return"http://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"http://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 r=e.size,a=s.size;return r-a});var s={},r=1,a=null,n=1;e.forEach(function(e){e.size!=a&&(n=r),a=e.size,++r;var t=jQuery("#answer-template").html();t=t.replace("{{PLACE}}",n+".").replace("{{NAME}}",e.user).replace("{{LANGUAGE}}",e.language).replace("{{SIZE}}",e.size).replace("{{LINK}}",e.link),t=jQuery(t),jQuery("#answers").append(t);var o=e.language;/<a/.test(o)&&(o=jQuery(o).text()),s[o]=s[o]||{lang:e.language,user:e.user,size:e.size,link:e.link}});var t=[];for(var o in s)s.hasOwnProperty(o)&&t.push(s[o]);t.sort(function(e,s){return e.lang>s.lang?1:e.lang<s.lang?-1:0});for(var c=0;c<t.length;++c){var …

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