프로그래머스 최댓값과 최솟값 문제 바로가기

python이라면 split을 이용해서 list을 만들고 max, min 함수를 이용해서 쉽게 구할 수 있을듯하다. C++도 vector에 저장해서 algorithm에서 max_element() min_element()으로 최대,최소값을 구할 수 있다. 하지만 vector을 저장하는 메모리가 사용되기 때문에 그보다 효율적인 비교하는 방식을 택했다.

#include <string>
#include <vector>
#include <sstream>

using namespace std;

string solution(string s) {
    string answer = "";
    int num, _max=-32768, _min=32767;
    stringstream stream;
    stream.str(s);
    while (stream >> num){
        if (num > _max){
            _max = num;
        }
        if (num < _min){
            _min = num;
        }
    }
    answer = to_string(_min) + " " + to_string(_max);
    return answer;
}