> 백엔드 개발 > C++ > 본문

C++를 사용하여 두 0 사이의 요소 제거

WBOY
풀어 주다: 2023-08-29 09:53:05
앞으로
1300명이 탐색했습니다.

C++를 사용하여 두 0 사이의 요소 제거

이 글에서는 0과 1개의 문자만 포함하는 주어진 문자열에서 두 개의 0 사이에 있는 요소를 제거하는 방법에 대해 설명합니다. 최종 문자열에는 0으로 둘러싸인 '1' 문자가 포함되어서는 안 됩니다. 예를 들어

Input : string = “110010”
Output : “11000”
Explanation: 1 is found between two zeros at the 4th index.

Input : string = “0010”
Output : “000”
Explanation : 1 is found between two zeros at the 2nd index.
로그인 후 복사

해결책을 찾는 접근 방식

간단한 접근 방식을 적용할 수 있습니다. 즉, 루프를 사용하여 문자열을 탐색하고 이전 및 다음 요소가 0인지 확인하고, 그렇다면 해당 인덱스는 0이 아닙니다. 그런 다음 길이를 저장하는 새 길이로 변수를 업데이트하고 해당 문자열을 인쇄합니다.

Example

#include <bits/stdc++.h>
using namespace std;

int main () {
   string str = "110010";
   int length = str.length();
   for (int i = 1; i < length - 1; i++) {
      // checking the element between two zeros
      if ((str.at (i - 1) == &#39;0&#39; && str.at (i + 1) == &#39;0&#39;)) {
         // deleting the element
         // if it is found between two 0&#39;s
         str.erase (i, 1);

         i--;
         if (i > 0 && str.at (i - 1) == &#39;0&#39;)
            i--;

            // updating the length of the string after removing the element.
         length = str.length ();
      }
   }
   cout << "String after removing elements between the two zeros: " << str;
   return 0;
}
로그인 후 복사

Output

String after removing elements between the two zeros: 1100
로그인 후 복사

코드 이해

  • 루프를 사용하여 인덱스 1에서 (length-1)까지 문자열을 순회합니다. .
  • i번째 인덱스의 이전 인덱스와 다음 인덱스가 '0'인지 확인하세요.
  • '1'과 같으면 해당 인덱스에서 문자를 제거합니다.
  • 길이 변수를 새 변수로 업데이트하세요.
  • 마지막으로 루프가 끝난 후 업데이트된 문자열을 인쇄합니다.

결론

이 기사에서는 '0'과 '1' 문자가 포함된 문자열에서 두 개의 0 사이에 있는 요소를 제거하는 방법에 대해 설명했습니다. 우리는 동일한 문제를 해결하는 C++ 프로그램도 보았습니다. 이 프로그램을 C, Java, Python 등과 같은 다른 언어로 작성할 수 있습니다. 이 기사가 도움이 되었기를 바랍니다.

위 내용은 C++를 사용하여 두 0 사이의 요소 제거의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:tutorialspoint.com
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
최신 이슈
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿