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

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

11
二分木フラクタル
今日の課題は、この例のような美しいascii-artとしてバイナリツリーを描くことです。 /\ / \ / \ / \ / \ / \ / \ / \ / \ / \ / \ / \ / \ / \ / \ / \ /\ /\ / \ / \ / \ / \ / \ / \ / \ / \ …

14
壊れたCAPSLOCK KEY FIASCO
従業員の中には、Capslockキーが壊れているため、交換するには安すぎます。作業を修正するために可能な限り短いプログラムを作成して、彼らを助けてください!与えられた文字列の各文字を大文字から小文字に、またはその逆に単純に変換します...しかし、ひねりがあります! クリスマスも大興奮です!したがって、Christmas(大文字と小文字を区別しない)シーケンス内の文字を修正しない小さな「バグ」を残すことになります。 入力 入力には、0x20〜0x7e(- ~)の改行とASCIIを含む単一の文字列(またはバイトの配列)を使用します。文字列にキャリッジリターンやその他の文字が含まれていることを心配する必要はありません。 出力 出力には、大文字と小文字が入れ替わった文字列のみが含まれている必要があります(そしてもちろんクリスマスのバグです!)。末尾に空白を1つまで含めることができます。 クリスマスバグ 例でこれを説明しましょう。 Input: i CAN HARDLY WORK LIKE THIS please GET ME A NEW KEYBOARD FOR cHRISTMAS Output: I Can HaRdly work lIke thiS PLEASE geT Me A new keyboard for ChriStmas canクリスマスの最初の文字である「c」が含まれているため、変更されません。の次の文字Christmasは「h」で、これはhardly(「r」も含む)であるため、変更されません。Christmasコードはそこに到達するまでに実際に探しているため、変更されません。「c」ではなく「s」。 シーケンスが見つかったら、「c」から最初からやり直し、もう一度繰り返しChristmasます。そのChristmasChristmasままにしておきます。 テストケース Input: Hello World! Output: hELLO wORLD! Input: I …
25 code-golf  string 

21
「0xUsernames」の変換
0xユーザー名 メッセージングサービスを使用しているユーザーが非常に多いため、すべてのユーザー名を保存するためのスペースが不足しています。これを修正するために、可能であれば16進数としてユーザー名の保存を開始します。 ユーザー名が文字のみで構成されている0123456789ABCDEF場合(大文字と小文字は区別されません)、16進数に変換して整数として保存できます。たとえば、ユーザー名ba5eba11は0xBA5EBA11、16進整数として解釈できます。 しかし、どう05AB1Eですか?先行ゼロがあり、これは失われます。そのため、ユーザー名を変換するときは常に1、整数として読み取る前に必ずaを追加します。 チャレンジ あなたの仕事は、空でないユーザー名を文字列として与えられたユーザー名を 'hexa-compresss'するプログラムまたは関数を書くことです: 16進整数として解釈できる場合は、1を先頭に追加し、16進数として解釈し、結果を10進数として出力します。 それ以外の場合は、変更されていない文字列を返します。 これはcode-golfなので、最短のソリューション(バイト単位)が勝ちです!組み込みのベース変換関数が許可されています。 テストケース 結果の整数は、言語の標準整数範囲内にあると想定できます。 ほとんどのメッセージングシステムのユーザー名と同様に、入力文字列には英数字とアンダースコアのみが含まれます。 1変換する前に必ず先頭を追加する必要があることを忘れないでください! "ba5eba11" -> 7421737489 "05AB1E" -> 17148702 "dec0de" -> 31375582 "Beef" -> 114415 "da7aba5e" -> 7960443486 "500" -> 5376 "DENNIS" -> "DENNIS" "Garth" -> "Garth" "A_B_C" -> "A_B_C" "0x000" -> "0x000" 参考のために、テストケースに使用したPython 3の実装を以下に示します(変更なし)。 import re def convert_name(name): …

15
文字列の線形回帰
この課題は少し難しいですが、文字列を指定するとかなり簡単sです: meta.codegolf.stackexchange.com 文字列内の文字の位置をx座標として、ASCII値をy座標として使用します。上記の文字列の場合、結果の座標セットは次のようになります。 0, 109 1, 101 2, 116 3, 97 4, 46 5, 99 6, 111 7, 100 8, 101 9, 103 10,111 11,108 12,102 13,46 14,115 15,116 16,97 17,99 18,107 19,101 20,120 21,99 22,104 23,97 24,110 25,103 26,101 27,46 28,99 29,111 30,109 次に、線形回帰を使用して、収集したセットの勾配とy切片の両方を計算する必要があります。上記のセットをプロットします。 これにより、(0インデックス付き)の最適な行が得られます。 y = 0.014516129032258x + …
25 code-golf  string  math 

20
アスキーリスクを描く
アスタリスクを使用した図形の描画に関する質問が豊富にあるため、アスタリスクが非常に多いため、ASCIIテーブルを使用して1つ描画する必要があると考えました。 チャレンジ あなたの仕事は、入力をまったく受け取らず、この正確なテキストを出力するプログラムまたは関数を書くことです。 ! "# $% &' () *+ ,- ./ 01 23456789:;<=>?@ABCDEF GHIJKLMNOPQRSTUVWXYZ[ \]^_ `a bc de fg hi jk lm no pq rs tu vw xy z{ |} ~ 参考のために、このサイトには完全なASCIIテーブルがリストされています。 ルール 上記のように、出力は正確なテキストである必要があります。先頭または末尾の空白は許可されます。 標準的なゴルフの抜け穴が適用されます-インターネットなどからこのASCIIリスクを読み取ることはできません。 これはcode-golfであるため、最短のソリューション(バイト単位)が優先されます。

30
時計の挑戦の時です!
次の形式で時間を表示する時計を作成してください。 18 ---------- 19 -------------------------------------------------- これは「18:10」を表示します。現在の時間と次の時間が行の先頭に表示され、その後にスペースとダッシュの数が続きます。最初の行にはこの時間で経過した分数、2行目はあと何分かを示しますこの時間に行きます。 明確にするために 時計はシステムの時刻を表示する必要があります。別のソースから時間を取得する方が便利な場合は、それでも問題ありません。それはないかもしれません、入力として供給すること。 で18:00、トップラインがちょうどある18(末尾のスペースが必要な許可はありません) で18:59、一番下の行は、19 - 10時間未満は、0(01 -----)で事前に埋め込まれるか、右揃え( 1 -----)でます。左揃えの1桁は、ダッシュが正しい場所から始まっている場合でも1 -----無効です(無効です)。 時計は24時間形式で時間を表示する必要があります。 24h形式と呼ばれていますが、実際にはありません24。23時間目の間に、2行目は00または 0ます。 表示は少なくとも1分間に1回更新する必要がありますが、正確に00数秒で更新する必要はありません。それがより便利な場合は、より頻繁に/継続的に更新できますが、結果はもちろん判読可能でなければなりません-画面全体に1つのスミアはありません。 入力 なし。 出力 上記のように。クロックを60桁の位置に埋め込むための末尾のスペースは両方の行で許可されますが、末尾の改行も許可されます。 次の分を表示するときは、画面をクリアする必要があります:clear-screenコマンドを使用するか、30行以上の改行を追加します。 追加のルール 標準的な抜け穴は禁止されています code-golf、バイト単位の最短回答が勝ちます。

9
Praming Puzles&Colf:Condense a String
このサイトで少し時間を過ごして、できるだけ短いものを楽しむようになりました。これが、同じ文字を複数回含む文字列に最近気分を害した理由かもしれません。あなたの仕事は、次のルールに従って特定の文字列を圧縮する関数またはプログラムを書くことです。 0-condensationで開始します。つまり、同じ文字の最初(左端)のペアを探し、その間に他の文字はありません。そのようなペアが見つかった場合、2つの文字のいずれかを削除し、別の0-condensationを実行してアルゴリズムを再起動します。そのようなペアが見つからない場合は、次の手順に進みます。例: programming-C0-> programing aabbcc-C0-> abbcc test-C0->test 次に1凝縮を実行します。つまり、同じ文字の最初のペアを探し、その間に他の1つの文字があります。そのようなペアが見つかった場合、それらの1つとそれらの間のすべての文字を削除し、0-condensationで再開します。そのようなペアが見つからない場合は、次の手順に進みます。例: abacac-C1-> acac java-C1->ja 凝縮がいくつかの文字を削除した後に再起動するたびに、nが元の文字列の長さである2凝縮などをn 凝縮まで続けます。例:-C2-> -C3-> programingpraming abcdafgafg 結果の文字列は凝縮と呼ばれ、各文字が最大1回含まれます。 入力: 印刷可能なASCII文字の小文字の文字列。 出力: 凝縮上記ルールに従って文字列。 例: examples -> es programming -> praming puzzles -> puzles codegolf -> colf andromeda -> a abcbaccbabcb -> acb if(x==1):x++ -> if(x+ fnabnfun -> fun abcdefae -> abcde アルゴリズムの仕組みを明確にする詳細な例: …
25 code-golf  string 

17
ASCIIの大ピラミッド
前書き 紀元前2600年で、人々は現在ピラミッドを構築しています。彼らはすでにピラミッドの基礎を作ったが、どのように続けるか分からない。そこで、彼らはあなたに助けを求めました。 ピラミッドを作成するルールは非常に簡単です。前のレイヤーの上にあるレイヤーについては、次のステップバイステップのハンドガイドに従うだけです。 前のレイヤーの端を切り取ります。 /キャラクターの上にキャラクターがなければならず、\その逆もあります。これは、エッジを除くすべての文字に適用されます。 左端の文字は常にa /で、右端の文字は常に\です。 ピラミッドの基礎の例を見てみましょう。 //\/\/\\ 以下を残して、エッジを切り取ります。 /\/\/\ スラッシュをバックスラッシュで変更し、逆も同様です。 \/\/\/ 左端の文字は常にa /で、右端の文字は常にa \なので、次のように変更します。 //\/\\ このレイヤーを前のレイヤーに配置します。 //\/\\ //\/\/\\ 最上部に到達するまで続行します(次のようになります/\)。したがって、最終的には次のようになります。 /\ //\\ //\/\\ //\/\/\\ これは、出力する必要があるものです。 タスク ピラミッドの基礎(長さが3を超える)を指定すると、ピラミッド全体が出力されます。左端の文字が/で、右端の文字がであると安全に仮定でき\ます。基底の長さは常に偶数であると仮定することもできます。末尾のスペースを使用できます。ピラミッドが所定の位置にある限り、先行スペースの使用も許可されます。1つの末尾と1 つの先頭の改行を使用できます。 テストケース Input: /\\\ Output: /\ /\\\ Input: //\\///\/\ Output: /\ /\\\ /\///\ ///\\\/\ //\\///\/\ Input: /////////////\ Output: /\ /\\\ /////\ /\\\\\\\ …

1
ドメイン名の評価
ドメイン名の取引は大企業です。ドメイン名の取引に最も役立つツールの1つは自動評価ツールです。そのため、特定のドメインの価値を簡単に見積もることができます。残念ながら、多くの自動評価サービスを使用するには、メンバーシップ/サブスクリプションが必要です。この課題では、.comドメインの値を大まかに推定できる簡単な評価ツールを作成します。 入出力 入力として、プログラムはドメイン名のリストを1行に1つずつ取得する必要があります。各ドメイン名はregexと一致します^[a-z0-9][a-z0-9-]*[a-z0-9]$。つまり、小文字、数字、ハイフンで構成されます。各ドメインは少なくとも2文字の長さで、ハイフンで始まったり終わったりしません。.comそれが暗示されているので、各ドメインから省略されています。 入力の代替形式として、目的の文字から整数への変換を指定する限り、文字列ではなく整数の配列としてドメイン名を受け入れることを選択できます。 プログラムは、対応するドメインの評価価格を示す整数のリストを1行に1つずつ出力する必要があります。 インターネットおよび追加ファイル 回答の一部としてこれらのファイルを提供する限り、プログラムは追加のファイルにアクセスできます。また、プログラムは辞書ファイル(有効な単語のリスト)にアクセスすることも許可されています。これは提供する必要はありません。 (編集)プログラムがインターネットにアクセスできるように、この課題を拡大することにしました。プログラムにはドメインの価格(または価格履歴)を検索できないこと、および既存のサービス(いくつかの抜け穴をカバーするために後者)のみを使用するという制限があります。 合計サイズの唯一の制限は、SEによって課される回答サイズの制限です。 入力例 これらは最近販売されたドメインです。免責事項:これらのサイトはどれも悪意があるとは思われませんが、誰がそれらを管理しているかわからないため、これらのサイトへのアクセスをお勧めしません。 6d3 buyspydrones arcader counselar ubme 7483688 buy-bikes learningmusicproduction 出力例 これらの数値は実数です。 635 31 2000 1 2001 5 160 1 得点 スコアリングは「対数の差」に基づきます。たとえば、ドメインが300ドルで販売され、プログラムが500ドルで評価した場合、そのドメインのスコアはabs(ln(500)-ln(300))= 0.5108です。ドメインの価格が1ドル未満になることはありません。総合スコアは、一連のドメインの平均スコアであり、低いスコアほど優れています。 予想されるスコアを把握するために、36以下のトレーニングデータの定数を単純に推測すると、約のスコアが得られ1.6883ます。成功したアルゴリズムのスコアはこれよりも低くなります。 値は数桁にわたるため、データは異常値で満たされるため、対数を使用することを選択しました。平方差の代わりに絶対差を使用すると、スコアリングでの外れ値の影響を減らすのに役立ちます。(また、ベース2またはベース10ではなく、自然対数を使用していることに注意してください。) 情報源 ドメインオークションのWebサイトであるFlippaから最近販売された1,400以上の.comドメインのリストをざっと見てきました。このデータは、トレーニングデータセットを構成します。提出期間が終了したら、追加の月を待ってテストデータセットを作成し、それを使用して提出物を採点します。他のソースからデータを収集して、トレーニング/テストセットのサイズを増やすこともできます。 トレーニングデータは、次の要点で入手できます。(免責事項:単純なフィルタリングを使用して、いくつかの露骨なNSFWドメインを削除しましたが、いくつかはまだこのリストに含まれている可能性があります。本当の価格。 https://gist.github.com/PhiNotPi/46ca47247fe85f82767c82c820d730b5 以下は、トレーニングデータセットの価格分布のグラフです。x軸は価格の自然対数で、y軸はカウントです。各バーの幅は0.5です。左側のスパイクは、ソースWebサイトが最低5ドルの増分入札を必要とするため、1ドルと6ドルに対応しています。テストデータの分布はわずかに異なる場合があります。 0.2のバー幅を持つ同じグラフへのリンクを次に示します。このグラフでは、11ドルと16ドルの急上昇を確認できます。

22
PKCS#7パディング検証
暗号化では、PKCS#7パディングは、N≥1のバイト数を追加するパディング方式で、追加される各バイトの値はNに等しくなります。 たとえば、Hello, World!13バイトの16進数は次のとおりです。 48 65 6C 6C 6F 2C 20 57 6F 72 6C 64 21 長さ16にPKCS#7パッドを選択すると、結果は次のようになります。 48 65 6C 6C 6F 2C 20 57 6F 72 6C 64 21 03 03 03 そして、長さ20までパディングすることを選択した場合、結果は次のようになります。 48 65 6C 6C 6F 2C 20 57 6F 72 6C 64 21 07 07 07 …

28
#Hashtag_or_not
このコードゴルフチャレンジでは、ハッシュタグを検証します! #What_your_code_should_do 入力は文字列です。有効なハッシュタグであれば真の値を出力し、そうでなければ偽の値を出力します。 次の場合、文字列を有効なハッシュタグとして定義します... ハッシュ(#)で始まります。 ハッシュタグの直後に番号がありません(たとえば#2016USElection、有効なハッシュタグではありません)。 「特殊文字」(つまり、アルファベット、アンダースコア(_)、または数字以外の文字)はありません。 入力にはASCII文字のみが含まれると想定できます。(Unicodeを使用した場合も不公平になります。) #ルール 基本的なコードゴルフ規則が適用されます。 #例 真実: # #e #_ABC #thisisanunexpectedlylongstringxoxoxoxo #USElection2016 偽物: Hello, World! #12thBday #not-valid #alsoNotValid! #!not_a_hash

23
どのゴーストが欠落していますか?
このチャレンジでは、パックマンのゴーストのリストを指定して、どのゴーストが欠落しているかを出力する必要があります。できる限り数バイトでそれをしなければなりません 入力 入力は、文字列またはリストで構成されます。これには、いくつかのゴーストが含まれます。 まばたき 真っ黒 ピンキー クライド ただし、入力にはPac-Man(句読点付き)も含まれる場合があります。したがって、リスト内のアイテムの最大数は、任意の順序で5つになります。無効なアイテムはリストにないものと想定できます 出力 出力は、文字列またはリストで構成されます。これには、入力に含まれていないすべてのゴーストが任意の順序で含まれます。ただし、パックマンが入力に含まれている場合、すべてのゴーストは失われていると見なされます(彼がそれらを食べるため)。 テストケース input: Clyde output: Blinky, Inky, Pinky alternate output: Inky, Pinky, Blinky or one of the other 4 permutations input: Clyde, Blinky # or however you delimit it output: Inky, Pinky alt: Pinky, Inky input: Pac-Man, Clyde Output: Blinky, Inky, …
25 code-golf  string 

22
各文字で始まる最初の単語を見つける
文字列が与えられたら、各文字で始まる最初の単語を検索します(大文字と小文字は区別されません)。 サンプル Ferulas flourish in gorgeous gardens.入力として使用: "Ferulas flourish in gorgeous gardens." ^^^^^^^ ^^ ^^^^^^^^ | | | | | --> is the first word starting with `g` | --> is the first word starting with `i` --> is the first word starting with `f` 次に、このサンプルの出力は、単一のスペースで結合された一致した単語になります。 "Ferulas in gorgeous" チャレンジ …
25 code-golf  string 

30
Stack Exchangeファビコンを生成する
PPCGロゴを認識していますか?アスキーアートをすると、こんな感じになります。 +---+ |PCG| +---+ v さて、このコードゴルフでは、PPCGロゴに似た他のサイトのロゴを作成するコードを作成します。 あなたがすべきこと 「短縮」文字列は、入力文字列にすべて大文字と数字を含む文字列になります(PPCG入力文字列がの場合Programming Puzzles & Code Golf)。 ボックス" ( +---+ | | +---+ v )Shortened stringに完全に適合する必要があります(大きくも小さくもない)。 また、vパーツは正確に1つ下、左から1つ右下にある必要があり+ます。 次に、短縮された文字列を含むボックスを出力します。 例 Stack Overflow: +--+ |SO| +--+ v Area 51: +---+ |A51| +---+ v ルール 入力に少なくとも1つの数字または大文字が含まれていると想定することができます。 標準のコードゴルフ規則が適用されます。

3
¿xu te te gismytermorna?(有効なギスムですか?)
(文字通り:「これはgismu -formに従う/実現するか?」) 前提 ロジバンという言語は、構築された言語です。つまり、その単語のすべてが自然に発達するのではなく作成されていることを意味します。ロジバンのセマンティックベースは、中国語、ヒンディー語、英語などの広く話されている自然言語の語根を組み合わせて合成されたギスム(ルート語)です。すべてのギスムは5文字の長さで、特定の厳密な形式に従います。 情報 私たちの目的のために、ロジバンのアルファベットは次のとおりです。 abcdefgijklmnoprstuvxz つまり、のないローマ字hqwy。 このアルファベットは、次の4つのカテゴリに分類できます。 母音 aeiou ソノラント子音 lmnr 無声子音ptkfcsx。声を出したとき、これらはそれぞれになります... 有声子音bdgvjz(に対応する有声子音はありませんx。) 有効なギスムになるには、5文字の長さの文字列が次の条件を満たしている必要があります。 子音母音パターンCVCCVまたはのいずれかCCVCVになります。Cは子音を表し、Vは母音を表します。 子音一致規則に従います。 CCVCV単語の子音一致ルール: 最初の2文字は、次の48ペア(source)のいずれかを構成する必要があります。 ml mr pl pr bl br tr tc ts dr dj dz kl kr gl gr fl fr vl vr cl cr cm cn cp ct ck cf jm jb …

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