Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> C++

ตรวจสอบว่าสตริงไบนารีมีรายการต่อเนื่องกันหรือไม่ใน C++


สมมติว่าเรามีสตริงไบนารี งานของเราคือตรวจสอบว่าสตริงมีอักขระที่เหมือนกันต่อเนื่องกันหรือไม่ หากมีอักขระที่เหมือนกันต่อเนื่องกัน แสดงว่าไม่ถูกต้อง มิฉะนั้นจะถูกต้อง จากนั้นสตริง “101010” ก็ใช้ได้ แต่ “10111010” ไม่ถูกต้อง

ในการแก้ปัญหานี้ เราจะข้ามจากซ้ายไปขวา หากอักขระสองตัวติดกันเป็นค่าเดียวกัน ให้คืนค่าเท็จ มิฉะนั้น จะเป็นจริง

ตัวอย่าง

#include <iostream>
#include <algorithm>
using namespace std;
bool isConsecutiveSame(string str){
   int len = str.length();
   for(int i = 0; i<len - 1; i++){
      if(str[i] == str[i + 1])
      return false;
   }
   return true;
}
int main() {
   string str = "101010";
   if(isConsecutiveSame(str))
      cout << "No consecutive same characters";
   else
      cout << "Consecutive same characters found";
}

ผลลัพธ์

No consecutive same characters