반응형
문제 링크 : https://www.acmicpc.net/problem/2810
문제 풀이
기본적으로 별의 개수를 세면 된다.
SLLS인 경우 *S*LL*S*가 되므로 사용할 수 있는 컵홀더는 4개이다.
그런데 SSS인 경우 *S*S*S*이다. 이 때, 별의 개수는 4개인데 사람이 3명이므로 컵홀더는 3개밖에 사용되지 않는다.
따라서 사용할 수 있는 컵홀더가 사람 수보다 많을 때는 사람 수를 출력해주면 된다.
소스 코드
#include <iostream>
using namespace std;
int main(){
int n, cnt = 1;
char arr[51];
cin >> n;
for(int i=0; i<n; i++){
cin >> arr[i];
}
for(int i=0; i<n; ){
if(arr[i] == 'S'){
cnt++;
i++;
}
else{
cnt++;
i+=2;
}
}
if(n < cnt){
cout << n;
}else{
cout << cnt;
}
}
반응형
'Programming Solve > BOJ' 카테고리의 다른 글
BOJ 1931 회의실 배정 / C++ (0) | 2021.08.31 |
---|---|
BOJ 1436 영화감독 숌 / C++ (0) | 2021.08.27 |
BOJ 2851 슈퍼 마리오 / C++ (0) | 2021.08.27 |
BOJ 3040 - 백설 공주와 일곱 난쟁이 / C++ (0) | 2021.08.26 |
BOJ 10815 숫자 카드 / C++ (0) | 2021.07.16 |