C プログラムで、指定された文字列のプレフィックスとサフィックスの両方である最長部分を出力します。
给定一个字符串,我们必须检查最长前缀的长度,它也是字符串的后缀,就像有一个字符串“abcab”,所以这里“ab”的长度为2,是最长的子字符串相同的前缀和后缀。
示例
Input: str[] = { “aabbccdaabbcc” } Output: 6 Input: abdab Output: 2
如果我们从字符串的开头和结尾开始指针,那么它们会在某个点重叠,所以我们不会这样做,而是从中间断开字符串并开始匹配左右字符串。如果它们相等,则任何一个匹配字符串的返回大小相同,否则尝试两侧的长度较短。
算法
int longest(char str[], int n) START STEP 1 : DECLARE length AS 0 AND i AS n/2 STEP 2 : IF n < 2 THEN RETURN 1 STEP 3 :LOOP WHILE TILL str[i]!='\0' IF str[i] == str[length] THEN, INCREMENT length BY 1 INCREMENT i BY 1 ELSE IF length == 0 THEN, INCREMENT i BY 1 ELSE DECREMENT length BY 1 END IF END IF END WHILE RETURN length STOP
示例
#include <stdio.h> int longest(char str[], int n){ int length = 0, i = n/2; if( n < 2 ) return 1; while( str[i]!='\0' ){ //When we find the character like prefix in suffix, //we will move the length and i to count the length of the similar prefix and suffix if (str[i] == str[length]){ ++length; ++i; } else //When prefix and suffix not equal{ if(length == 0) ++i; else --length; } } return length; } int main(int argc, char const *argv[]){ char str[] = {"abccmmabcc"}; int n = sizeof(str)/sizeof(str[0]); int length = longest(str, n); printf("Length = %d", length); return 0; }
输出
如果我们运行上面的程序,它将生成以下输出:
Length = 4
以上がC プログラムで、指定された文字列のプレフィックスとサフィックスの両方である最長部分を出力します。の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











印刷が必要なファイルを開いたときに、印刷プレビューで表の枠線が何らかの原因で消えてしまった場合は、早めに対処する必要があります。 file このような質問がある場合は、エディターに参加して次のコースを学習してください: Excel で表を印刷するときに枠線が消えた場合はどうすればよいですか? 1. 次の図に示すように、印刷する必要があるファイルを開きます。 2. 以下の図に示すように、必要なコンテンツ領域をすべて選択します。 3. 以下の図に示すように、マウスを右クリックして「セルの書式設定」オプションを選択します。 4. 以下の図に示すように、ウィンドウの上部にある「境界線」オプションをクリックします。 5. 下図に示すように、左側の線種で細い実線パターンを選択します。 6.「外枠」を選択します

PPT を使用するとき、印刷する必要があることがよくあります。しかし、PPT にはページ数が多いことは誰もが知っていますが、1 枚ずつ印刷すると本当に無駄でしょうか?したがって、私が個人的にテストしたところ、PPT 6 ページを 1 ページに配置し、両面印刷しても問題ありませんでした。紙の無駄がなく、レイアウト内容も一目瞭然です。では、1 ページに 6 枚の両面 PPT シートを印刷する方法をご存知ですか?次に設定方法を説明しますので、興味のある方はぜひご覧ください。手順の詳細: 1. まず、コンピューター上で印刷する必要がある PPT を見つけ、ダブルクリックして開きます。ページ左上のボタンの横にある逆三角形をクリックし、ドロップダウンメニューから[ファイル]ボタンを見つけてクリックし、表示される情報の[印刷]をクリックします。 2. クリックします

PHPでint型をstring型に変換する方法を詳しく解説 PHPの開発では、int型をstring型に変換する必要に遭遇することがよくあります。この変換はさまざまな方法で実現できますが、この記事では、読者の理解を深めるために、具体的なコード例とともに、いくつかの一般的な方法を詳しく紹介します。 1. PHP の組み込み関数 strval() を使用する PHP には、さまざまな型の変数を文字列型に変換できる組み込み関数 strval() が用意されています。 int型をstring型に変換する必要がある場合、

Golang で文字列が特定の文字で始まるかどうかを確認するにはどうすればよいですか? Golang でプログラミングする場合、文字列が特定の文字で始まるかどうかを確認する必要がある状況によく遭遇します。この要件を満たすために、Golang の strings パッケージによって提供される関数を使用してこれを実現できます。次に、Golangを使って文字列が特定の文字で始まるかどうかを確認する方法を、具体的なコード例とともに詳しく紹介します。 Golang では、strings パッケージの HasPrefix を使用できます。

現在、エッジブラウザを利用してさまざまな情報を検索するユーザーが多くなっていますが、Web ページの内容を印刷中に印刷したいと考えているユーザーもいますが、その操作方法がわからない人も少なくありません。この問題を解決するために、このソフトウェアチュートリアルは、具体的な操作手順をご紹介しますので、お役に立てれば幸いです。困っている方はぜひ手順をチェックしてみてください。エッジ ブラウザで Web コンテンツを印刷する方法の概要: 1. ソフトウェアを起動し、ページの上部にある三点ボタンをクリックします。 2. 以下のオプションメニューで「印刷」を選択します。 3. ページ上にウィンドウが表示されるので、左下の「印刷」をクリックします。

タイトル: Golang で文字列が特定の文字で終わるかどうかを判断する方法 Go 言語では、文字列が特定の文字で終わるかどうかを判断する必要があることがあります。これは文字列を処理するときに非常に一般的です。この記事では、Go 言語を使用してこの関数を実装する方法と、参考用のコード例を紹介します。まず、Golang で文字列が指定された文字で終わるかどうかを判断する方法を見てみましょう。 Golang の文字列内の文字はインデックス作成によって取得でき、文字列の長さは次のようになります。

仕事では、作成した帳票や書類を紙に印刷することが多いのですが、帳票の内容が多すぎたり、長すぎたりするため、すべてを印刷できないことがあります。不完全な部分を印刷できない場合の対処方法。方法/ステップ 1: まず、印刷するフォームを準備し、調整する必要があります。プロポーションを保ちながら、写真のように横の長さをできるだけ短くします。 2. 次に、図に示すように、インターフェースの左上隅にある「ファイル」ボタンをクリックします。 3. 次に、図に示すように、ポップアップ オプションの [印刷] をクリックします。 4. その後、図に示すように、印刷プレビューウィンドウが表示されるので、その中の「印刷プレビュー」をクリックします。 5.の

1. まず pycharm を開いて、pycharm ホームページに入ります。 2. 次に、新しい Python スクリプトを作成し、右クリックして [新規] をクリックし、[Pythonfile] をクリックします。 3. 文字列、コード: s="-" を入力します。 4. 次に、文字列内のシンボルを 20 回繰り返す必要があります (コード: s1=s*20)。 5. 印刷出力コード、コード: print(s1) を入力します。 6. 最後にスクリプトを実行すると、下部に戻り値が表示されます。 - 20 回繰り返しました。
