https://www.acmicpc.net/problem/1439
처음에 무슨 소리인가 싶어서 5분간 예제 보면서 고민하다가 내린 결론은 간단했다.
같은 문자가 쭉 가다가 한번 다른 문자가 나오면 그 횟수를 카운트해서, 가장 적은 횟수를 출력해주면 되는 거였음.
#include <iostream>
#include <string>
using namespace std;
int main()
{
string input;
cin >> input;
int zero = 0, one = 0;
for (int i = 0; i < input.length(); i++)
{
if (input[i] != input[i + 1])
{
if (input[i] == '0')
zero++;
else // inuput[i] == '1'
one++;
}
}
int result = one > zero ? zero : one;
cout << result;
return 0;
}
'백준 문제풀이 > 실버5' 카테고리의 다른 글
백준 1475번 - 방 번호 (0) | 2021.11.14 |
---|---|
백준 1246번 - 온라인 판매 (0) | 2021.11.09 |
백준 1427번 - 소트인사이드 (0) | 2021.11.03 |
백준 1181번 - 단어 정렬 (0) | 2021.10.30 |
백준 1037번 - 약수 (0) | 2021.10.30 |