C++/백준 C++

[C/C++] 백준 1439번 뒤집기

CE : 하랑 2023. 12. 3. 15:01

 

 

 

 

 

코드

#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;
}