检查给定的字符串是否由C ++中的两个交替字符组成

在这里,我们将看到如何检查字符串是否由交替字符组成。如果字符串像XYXYXY,则有效,如果字符串像ABCD,则无效。

该方法很简单。我们将检查第ith个字符和第i + 2个字符是否相同。如果它们不相同,则返回false,否则返回true。

示例

#include <iostream>
using namespace std;
bool hasAlternateChars(string str){
   for (int i = 0; i < str.length() - 2; i++) {
      if (str[i] != str[i + 2]) {
         return false;
      }
   }  
   if (str[0] == str[1])
   return false;  
   return true;
}
int main() {
   string str = "XYXYXYX";
   if(hasAlternateChars(str)){
      cout << "Valid String";
   }else{
      cout << "Not a Valid String";
   }
}

输出结果

Valid String