2020. 6. 8. 09:29ㆍ알고리즘_생각하기/프로그래머스 Level 1
문제 설명
문자열 s에 나타나는 문자를 큰것부터 작은 순으로 정렬해 새로운 문자열을 리턴하는 함수, solution을 완성해주세요.
s는 영문 대소문자로만 구성되어 있으며, 대문자는 소문자보다 작은 것으로 간주합니다.
제한 사항
- str은 길이 1 이상인 문자열입니다.
풀이
사용 언어 : C++
#include <string>
#include <vector>
using namespace std;
string solution(string s)
{
string answer = "";
for (int i = 0; i < s.size(); i++) //문자열을 서로서로 비교하기 위해 이중 포문을 돌린다
{
for (int j = 0; j < s.size(); j++)
{
if (s[i] >= s[j]) //큰 것부터 배치해야 하므로 비교를 하고
{
char temp = s[i]; //스왑!!
s[i] = s[j];
s[j] = temp;
}
}
}
for (int i = 0; i < s.size(); i++) //정렬이 완료된 문자열을 answer에 넣는다. 혹은 return을 정렬된 문자열로 바꾸어
줘도 상관 없음
{
answer.push_back(s[i]);
}
return answer;
}
'알고리즘_생각하기 > 프로그래머스 Level 1' 카테고리의 다른 글
프로그래머스 - 약수의 합 < Level 1 > (0) | 2020.06.08 |
---|---|
프로그래머스 - 제일 작은 수 제거하기 < Level 1 > (0) | 2020.06.08 |
프로그래머스 - 자연수 뒤집어 배열로 만들기 < Level 1 > (0) | 2020.06.08 |
프로그래머스 - 두 정수 사이의 합 < level 1 > (0) | 2020.06.05 |
프로그래머스 - 짝수와 홀수 < Level 1 > (0) | 2020.06.05 |