728x90
최댓값과 최솟값
문제 설명
리스트에 있는 값들 중 최댓값과 최솟값을 찾는 문제
문제 풀이
소스코드 : C++
- 문자열로 들어온 값이기 때문에
" "
공백을 기준으로split
을 한다. split
이 된 문자들을stoi
를 이용하여 정수형으로 바꿔주고 최댓값과 최솟값을 갱신한다.- answer 도 문자열을 요구하므로
tostring
을 이용하여 문자열로 변환한 후 답을 반환한다.
#include <iostream>
#include <string>
#include <vector>
#include <algorithm>
using namespace std;
vector<string> split(string s, string delimiter){
vector<string> ret;
int pos_start = 0, pos_end = 0, delim_len = delimiter.size();
string token;
while((pos_end = s.find(delimiter, pos_start)) != string::npos){
token = s.substr(pos_start, pos_end - pos_start);
pos_start = pos_end + delim_len;
ret.push_back(token);
}
ret.push_back(s.substr(pos_start));
return ret;
}
string solution(string s) {
string answer = "";
vector<string> tmp = split(s," ");
int Min = 1<<30;
int Max = -1<<30;
for(auto res : tmp){
int a = stoi(res);
Min = min(a,Min);
Max = max(a,Max);
}
answer+=to_string(Min)+" ";
answer+=to_string(Max);
return answer;
}
소스코드 : Python
간단...
def solution(s):
s = list(map(int,s.split()))
return str(min(s)) + " " + str(max(s))
728x90
300x250