C++の文字列から最初の最大長の偶数単語を検索します
この問題では、コンマで区切られた単語で構成される文字列strです。私たちのタスクは、文字列から最初の最大長(単語も含む)を見つけることです 。
長さが最大で偶数である最大の単語「2つのスペース間の文字列」を見つける必要があります。
問題を理解するために例を見てみましょう
Input : str = "learn programming at TutorialsPoint" Output : TutorialsPoint
説明 −
The string with even length is TutorialsPoint.
ソリューションアプローチ
この問題の簡単な解決策は、現在の文字列よりも長い文字列を見つけることです。 maxStringの長さを0に初期化します。
アルゴリサム
ステップ1 −文字列を繰り返し処理します。
ステップ2 −現在の単語の長さが均一で、単語の長さが最後の大きい単語よりも長いかどうかを確認します。
ステップ3 −単語を返します。
例
ソリューションの動作を説明するプログラム
#include <bits/stdc++.h>
using namespace std;
string findMaxEvenLenWord(string str) {
int len = str.length();
int i = 0; int currWordlen = 0;
int maxWordLen = 0;
int stringPointer = -1;
while (i < len) {
if (str[i] == ' ') {
if (currWordlen % 2 == 0) {
if (maxWordLen < currWordlen) {
maxWordLen = currWordlen;
stringPointer = i - currWordlen;
}
}
currWordlen = 0;
}
else {
currWordlen++;
}
i++;
}
if (currWordlen % 2 == 0) {
if (maxWordLen < currWordlen) {
maxWordLen = currWordlen;
stringPointer = i - currWordlen;
}
}
if (stringPointer == -1)
return "Not Found!";
return str.substr(stringPointer, maxWordLen);
}
int main() {
string str = "Learn programming at Tutorialspoint";
cout<<"The maximum length even word is '"<<findMaxEvenLenWord(str)<<"'";
return 0;
} 出力
The maximum length even word is 'Tutorialspoint'
-
C++で文字列の最初に繰り返される単語を検索します
この問題では、コンマで区切られた単語で構成される文字列strです。私たちのタスクは、文字列内の最初に繰り返される単語を見つけることです。 。 文字列内で繰り返される最初の単語「2つのスペースの間の文字列」を見つける必要があります。 問題を理解するために例を見てみましょう Input : str = "C program are easy to program" Output : program ソリューションアプローチ この問題の簡単な解決策は、ハッシュマップデータ構造を使用することです。最初に繰り返される単語を見つけるために、各単語とその数(文字列に出現した回数)
-
C++を使用してN番目の偶数の長さの回文を検索します
C + +を使用したことがある場合は、回文数について聞いたことがあるはずです。したがって、このガイドでは、適切な例を使用して、「N番目の偶数長の回文」に関するすべてを説明します。回文数は、それらを逆にした後も同じままである数です。数字だけでなく、文字を逆にしてもスペルが変わらない単語。例- 数字={1,121,131,656,1221,1551} 言葉={saas、malayalam、level、mom} 複雑に見えますが、どのシステムでも非常に簡単に実行できます。それでは、回文について簡単に説明しましょう。 N番目の偶数の長さの回文数 11,22,33,44,55,66,77,88