코드
#include <iostream>
#include <string>
#include <algorithm> // min
using namespace std;
int area0=0; // 0 영역의 개수
int area1=0; // 1 영역의 개수
int main()
{
cin.tie(0); // 코드를 작성하면 입출력 속도가 빨라진다. -> C와 C++ 표준 stream의 동기화를 비활성화
cout.tie(0); // C++의 입출력인 cin, cout만 사용하도록 주의해야합니다.
string bit;
cin >> bit;
for (int i = 0; i < bit.size(); i++) {
if (bit[i] != bit[i + 1]) { // bit 문자열에서 앞 뒤 문자 -> ex) 1!=0 일 경우
if (bit[i] == '0') { // bit[i] 가 0일 때
area0++; // 0 영역 개수 증가
}
else { // bit[i] 가 1일 때
area1++; // 1 영역 개수 증가
}
}
}
cout << min(area0, area1); // 최소 횟수 이므로 둘중 가장 작은 값이 결과
return 0;
}
'C++ > 백준 C++' 카테고리의 다른 글
[C/C++] 백준 20920번 영단어 암기는 괴로워 - 참고 (4) | 2023.12.07 |
---|---|
[C/C++] 백준 30868번 개표 (2) | 2023.12.06 |
[C/C++] 백준 15649번 N과 M (1) - 참고 (2) | 2023.11.25 |
[C/C++] 백준 1149번 RGB거리 - 참고 (2) | 2023.11.25 |
[C/C++] 백준 9095번 1, 2, 3 더하기 - 참고 (1) | 2023.11.24 |