티스토리 뷰

반응형

https://www.acmicpc.net/problem/2810

 

2810번: 컵홀더

첫째 줄에 좌석의 수 N이 주어진다. (1 ≤ N ≤ 50) 둘째 줄에는 좌석의 정보가 주어진다.

www.acmicpc.net


⊙ 문제

⊙ 입력

⊙ 출력

⊙ 예제 입출력

⊙ 알고리즘 분류

  • 구현
  • 문자열
  • 그리디 알고리즘

 


 

⊙ 문제 접근 과정

 

모든 사람은 컵 한 개만 들 수 있다고 하니 만약 count의 수가 사람 수보다 넘어가는 것만 신경 써주면 된다.

 

마지막 출력에서 조건문을 사용하여 해결했다.


 

⊙ 문제 풀이

 

#include <iostream>

using namespace std;

int N;
char arr[51];

int main() {
    cin >> N;

    for(int i=0;i<N;i++) 
        cin >> arr[i];
    
    int cnt=1;
    int temp=0;
    
    for(int i=0;i<N;i++) {
        if(arr[i]=='S')
            cnt++;
        else {
            temp++;
            if(temp==2) {
                temp=0;
                cnt++;
            }
        }
    }

    if(cnt>N) cout << N;
    else cout << cnt;
}

 


⊙ 결과

 


⊙ 마무리

 

 

NONE

 

좋아요 로그인하지 않아도 누를 수 있습니다!

728x90
반응형
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/04   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
글 보관함