안녕 세상아,

[프로그래머스/c++] Lv2 최댓값과 최솟값 본문

프로그래머스

[프로그래머스/c++] Lv2 최댓값과 최솟값

돈 많은 백수가 되고싶다 2024. 8. 5. 17:14

https://school.programmers.co.kr/learn/courses/30/lessons/12939

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

1. 정수를 넣을 vector를 하나 만든다. 

2. 마이너스가 있을 수 있기 때문에 string으로 변수를 하나 더 만든다. 

3. 정수들이 띄어쓰기로 구분되어있기 때문에 띄어쓰기를 만나게 되면 그 전에 저장되어있던 str를 stoi로 정수로 바꾼 후 vector에 삽입한다. 

4. 정수를 vector에 이미 넣었으니 str을 clear 해준다. 

5. 띄어쓰기를 만나지 않으면 str에 다 추가해준다. 

6. 마지막 str은 띄어쓰기를 만나지 않았기 때문에 vector에 삽입되지 않았으니, 마지막에 한번 더 삽입해준다. 

7. 정렬을 해준 후 답 출력하면 된다. 

#include <string>
#include <vector>
#include <algorithm>

using namespace std;

string solution(string s) {
    string answer = "";
    vector<int> v;
    string str;
    for(int i = 0; i < s.size(); i++){
        if(s[i] == ' '){
            v.push_back(stoi(str));
            str.clear();
            continue;
        }
        str += s[i];
    }
    v.push_back(stoi(str));
    sort(v.begin(),v.end());
    answer=to_string(v[0])+' '+to_string(v[v.size()-1]);
    return answer;
}

 

 

2단계 만나자마자 헤맨다 젠장 ㅜ 괜찮아 꾸준히 하면 괜찮겠지...암파인..갱차나..갠차나...