새소식

코딩테스트/백준_브론즈

[C++][백준 2083] 럭비 클럽

  • -

[문제]

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

 

2083번: 럭비 클럽

입력 받은 각 회원에 대해 이름과 분류를 출력한다. 성인부 회원이면 'Senior', 청소년부 회원이면 'Junior'를 출력한다.

www.acmicpc.net

[문제 풀이]

한줄씩 입력을 받아서 만약 "# 0 0"이면 종료하고 아니면 split을 통해서 입력받은 string을 s[0],s[1],s[2]로 나누었다.

s[1]과 s[2]가 조건을 만족하면 s[0],Senior를 출력 아니면 s[0],Junior를 출력시켰다. 

[회고]

사실 string, int, int로 받아서 해결해도 되는데 최근에 프로그래머스등의 문제에서 string으로 입력을 받아서 해결해야 하는 경우가 많아져서 split 함수를 구현해서 풀었다. 예전엔 가끔 버벅였는데 이제는 제대로 체득이 된듯 치는 모습에 좀 뿌듯함.

[코드]

#include <iostream>
#include <sstream>
#include <vector>
#define endl "\n"

using namespace std;

vector<string> split(string str,char delimeter){
    vector<string> answer;
    istringstream iss(str);
    string buffer;

    while(getline(iss,buffer,delimeter)){
        answer.push_back(buffer);
    }

    return answer;
}

int main(){
    string s;
    while(getline(cin,s)){
        if(s == "# 0 0"){
            break;
        }
        vector<string> result;
        result = split(s,' ');
        if(stoi(result[1]) > 17 || stoi(result[2])>= 80){
            cout<<result[0]<<" Senior"<<endl;
        }
        else{
            cout<<result[0]<<" Junior"<<endl;
        }

    }
    return 0;
}

'코딩테스트 > 백준_브론즈' 카테고리의 다른 글

[C++][백준 27160] 할리갈리  (0) 2023.04.04
[C++][백준 4141] Numbersrebmun  (0) 2023.04.01
[C++][백준 1264] 모음의 개수  (0) 2023.03.27
[C++][백준 1284] 집 주소  (3) 2023.03.26
[C++][백준 9086] 문자열  (0) 2023.03.24
Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.