MG
[백준] 20365 - 블로그2 본문
https://www.acmicpc.net/problem/20365
20365번: 블로그2
neighbor 블로그를 운영하는 일우는 매일 아침 풀고 싶은 문제를 미리 정해놓고 글을 올린다. 그리고 매일 밤 각각의 문제에 대하여, 해결한 경우 파란색, 해결하지 못한 경우 빨간색으로 칠한
www.acmicpc.net
한 번에 B 또는 R 을 쭉 칠하고 나머지 색을 중간중간 칠하면 최소가 됩니다. 하지만 그 최소를 B, R 둘 다 해보아야 알기 때문에 연속되지 않은 B, R 수를 세고 둘 중 최소를 구해주면 됩니다.
#include <iostream>
using namespace std;
int n, b, r;
string s;
int main() {
ios::sync_with_stdio(0);
cin.tie(0);
cin >> n >> s;
char c = s[0];
if (c == 'B')
b++;
else
r++;
for (int i = 1; i < n; i++) {
if (c == 'B') {
if (c != s[i]) {
r++;
c = s[i];
}
} else {
if (c != s[i]) {
b++;
c = s[i];
}
}
}
int ans = min(b + 1, r + 1);
cout << ans << "\n";
return 0;
}
'컴퓨터과학 > 알고리즘_PS' 카테고리의 다른 글
[백준] 1092 - 배 (0) | 2022.04.28 |
---|---|
[백준] 17626 - Four Squares (0) | 2022.04.27 |
[백준] 16953 - A → B (0) | 2022.04.26 |
[백준] 11726 - 2 x n 타일링 (0) | 2022.04.25 |
알고리즘 PS (0) | 2022.04.24 |