문제풀이
[프로그래머스] 문자열 정렬하기 (1) C++
1ye1
2024. 11. 8. 23:10
[문제 설명]
문자열 my_string이 매개변수로 주어질 때, my_string 안에 있는 숫자만 골라 오름차순 정렬한 리스트를 return 하도록 solution 함수를 작성해보세요.
[제한사항]
1 ≤ my_string의 길이 ≤ 100
my_string에는 숫자가 한 개 이상 포함되어 있습니다.
my_string은 영어 소문자 또는 0부터 9까지의 숫자로 이루어져 있습니다. - - -
[문제풀이]
#include <string>
#include <vector>
#include <algorithm>
using namespace std;
vector<int> solution(string my_string) {
vector<int> answer;
for(int i=0;i<my_string.size();i++){
if(isdigit(my_string[i])==1){ //숫자 판별
answer.push_back(my_string[i]-'0');
}
}
sort(answer.begin(), answer.end()); //오름차순 정렬
return answer;
}
[학습사항 / 개선사항]
isdigit() 함수를 새로 알게 되었다.
0~9까지의 ASCII 값이 들어오면 1을 반환하고, 이외의 값이 들어오면 0을 반환한다.