問題タブ [palindrome]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
palindrome - 最も近い回文までの距離
文字列がどの程度対称であるかを測定する何らかのアルゴリズムを提供するアルゴリズムが必要です.以前の質問を調べたところ、文字列を回文に変換するために文字列に追加する必要がある文字数を見つけることに関する質問が見つかりました. これは私が探しているものに近いですが、許容される編集操作のセットが制限されすぎています。
これに対する私の動機は、YouTube に投稿した "Numbers are Colorful" というビデオの改良版を作りたいということです。このビデオでは、黄金比の基数と、無理数の基数を使用したその他の関連システムをいくつか示しています。驚くべきことに、1 つのシステムは完全に対称的なものから始まります。しかし、他のものは私が強調したい部分的な対称性を示しています.
prolog - Prolog ファンクターを差分リスト付きのファンクターに変換する
Prolog (SWI) の宿題に取り組んでいますが、これを行う方法がわかりません。
私はファンクターを持っています:
これは、与えられたリストが回文であるかどうかを示します。
宿題として、差分リストを使用する場合と使用しpalindrome/2
ない場合のファンクターを作成する必要があります。append/3
差分リストが の形式であることは知っていますが、[Y|X]-X
これを使用する方法と、これが追加ファンクターをどのように置き換えることができるかがわかりません。
誰かが私にこれを説明してもらえますか?
c# - 文字列が回文かどうかを調べる
入力として文字列があり、文字列を 2 つの部分文字列に分割する必要があります。左の部分文字列が右の部分文字列と等しい場合は、何らかのロジックを実行します。
これどうやってするの?
サンプル:
例: myString = "ankYkna"
, したがって、2 つの部分文字列に分割すると
left-part = "ank"
、 ,
right-part = "ank"
(反転後) になります。
java - 回文サービス クラスとクライアント クラス
助けが必要な質問がいくつかあります。
私のコードとソースコードの両方をここに追加します (説明が必要な割り当ては何だと思います)。
サービス クラス
クライアントクラス
私のコーディングは私に
理由はわかりませんが、代わりにセットまたは2番目のコンストラクターに大文字を追加するだけで、サービスクラスを修正できる可能性があります。
それが私の質問です、一番です
algorithm - 回文の最初の出現を検出する方法
文字ストリームから読み取ると仮定すると、回文の最初の出現を読み取ったときに関数が返されます。
回文の長さは偶数でなければなりません。
時間計算量の要件は O(N) です。
例:
- 1文字目:4
- 2文字目:1
- 3キャラ目:3
- 4文字目:3
- 5文字目:1
- 6文字目:4、戻る
c++ - 最長の回文を見つける方法
重複の可能性:
指定された文字列で最長の回文を返す関数を作成する
与えられたテキストで最長の回文を見つけるプログラムを書く必要がある C++ の課題があります。たとえば、テキストは次のとおりです: asdqerderdiedasqwertunut
、私のプログラムはtunut
19 のインデックスで検索する必要があります。ただし、入力がこれに変更された場合、22のインデックスではなく 0 のインデックスでastunutsaderdiedasqwertunut
検索する必要があります。astunutsa
tunut
だから、私の問題はこれです。しかし、私はこのテーマの初心者です。文字列クラス、ループ、ifs だけを知っています。これについて私を助けていただければ幸いです。
前もって感謝します。
prolog - プロローグ: dcg ルールを使用してスペースを無視する
文字列が回文かどうかをテストするプログラムを SWI Prolog で作成しました。DCG でのこのタスクは、私が把握できたもので、非常に簡単なものでした。
スペースを無視するルールを書きたいのですが、しばらく検索しても、探していたものと実際に一致するものはありませんでした。私はまだDCGにかなり慣れていないので、洞察をいただければ幸いです。
scala - Scala を使用した回文
CodeChef からこの問題に遭遇しました。問題は次のように述べています。
正の整数は、左から右に読んでも右から左に読んでも、10 進法での表現が同じ場合、回文と呼ばれます。1000000 桁以下の正の整数 K に対して、K より大きい最小の回文の値を出力に書き込んでください。
次のように isPalindrome メソッドを定義できます。
私が直面している問題は、整数が isPalindrome メソッドを満たすときに、最初に指定された数値からループしてブレークし、最初の回文を返す方法です。また、isPalindrome メソッドを記述するより良い (効率的な) 方法はありますか?
ここでいくつかのガイダンスを得るのは素晴らしいことです
c++ - 句読点と空白を除いた文字列の比較
C++ で大きな回文を見つけるプログラムを作成しています。大文字と小文字、句読点、および空白を無視して、入力された文字列の回文を取得する必要があります。たとえば、次の行を参照してください。
Confusius say: マダム、私はアダムです。
ここで、最大の回文はマダムです。大文字と小文字、句読点、空白を無視すると、私はアダムです。
また、プログラムは、2000 文字の文字列を 1 秒未満でテストできるように効率的でなければなりません。したがって、最大の回文を返すための次のコードがあります。
そして、このメソッドのパラメーターとして完全にフォーマットされた文字列 (空白、句読点、大文字と小文字を区別しない) を入力してみましたが、必要な出力を得ることができました。(たとえば、前の例では、最大の回文としてMADAMIMADAMが返されます。
質問:
この文字列を元の状態に戻すにはどうすればよいですか (句読点、空白、大文字と小文字を使用)。
また
メソッド内でストリップされた文字列を直接テストする方法はありますlargestPal
が、選択した最大の回文に対応する元の文字列 (ストリップされていない) を返すにはどうすればよいですか?
どんな助けでも大歓迎です!
python - Python の回文
回文を作りたいです。例えば:
Pythonで回文を作成する方法を教えてください。完全なコードではないため、次のステップを教えてください。
ありがとう