💡 그리디 알고리즘/구현/문자열
Memory 1112KB Time 0ms Code Length 407B
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include<stdio.h>
int main()
{
// 커플이 한쌍까지는 사람수 만큼 컵놓을수 있고, n(>2)쌍부터는 n-1 사람이 사용 못함
int t;
int sl_cnt = 0;
scanf("%d", &t);
char sl[51];
scanf("%s", sl);
for (int i = 0; i < t; i++) {
if (sl[i] == 'L') {
sl_cnt++;
}
}
sl_cnt = sl_cnt / 2;
if (sl_cnt <= 1) {
printf("%d\n", t);
}
else {
printf("%d\n", t - sl_cnt + 1);
}
}
이 코드는 입력으로 받은 문자열에서 ‘L’이 나오는 횟수를 세고, 이를 이용하여 컵을 놓을 수 있는 쌍의 수를 계산한다. ‘L’이 나오는 횟수를 2로 나누어 컵을 놓을 수 있는 쌍의 수를 구한 후, 이 값이 1 이하이면 컵을 놓을 수 있는 쌍의 수는 사람의 수와 같고, 그렇지 않으면 사람의 수에서 ‘L’이 나오는 횟수를 빼고 1을 더한 값을 출력한다.