프로그래머스 - 최댓값과 최솟값
2022. 9. 15. 16:46ㆍ코딩 공부 연습
반응형
며칠전에 strtok 쓰는걸 연습한적이 있는데, 오늘 푼 문제도 마침 문자열을 잘라내는 거였다. 그새 까먹어서 또 고생을 했다. 멍청한 만큼 여러번 풀어봐야 한다ㅋㅋ 며칠뒤 하면 또 까먹을게 틀림없다. 파싱 부분이 합쳐서 10줄도 안되는데,,.
c++ 이라서 타입 변화를 휙휙 해주어야 했다. 문자열을 잘라서 숫자로 바꾸고(atoi) 최소, 최대값을 찾은 후 다시 이를 string으로 바꾸어야 했다. atoi 를 위해서 캐릭터 배열로 string을 바꾸어주고(strcpy, c_str() 사용), 정수를 다시 string으로 바꾸기 위해 to_string() 을 사용해주었다.
피신때처럼 itoa, atoi를 만들어서 해도 어떻게든 하긴 할거같다. 문제가 성가실뿐!
#include <string>
#include <vector>
#include <iostream>
#include <cstring>
#include <algorithm>
using namespace std;
string solution(string s) {
string answer = "";
vector <string> parsed;
vector <int> num_list;
char tmp[s.length()];
strcpy(tmp, s.c_str());
char *ptr = strtok(tmp, " ");
while(ptr !=NULL)
{
int to_num = atoi(ptr);
num_list.push_back(to_num);
ptr = strtok(NULL, " ");
}
sort(num_list.begin(), num_list.end());
string minval = to_string(num_list[0]);
string maxval = to_string(num_list[num_list.size()-1]);
answer += minval; answer += " "; answer += maxval;
return answer;
}
17956 등! -> 만등안에 들어가볼 생각이당ㅋㅋㅋ
'코딩 공부 연습' 카테고리의 다른 글
프로그래머스 - 124 나라의 숫자 (0) | 2022.09.17 |
---|---|
프로그래머스 - JadenCase 문자열 만들기 (0) | 2022.09.15 |
프로그래머스 - 영어 끝말잇기 (1) | 2022.09.13 |
프로그래머스 - 주차 요금 계산 (1) | 2022.09.13 |
프로그래머스 - k진수에서 소수 개수 구하기! (0) | 2022.09.08 |