문제 설명
문자열 s에 나타나는 문자를 큰것부터 작은 순으로 정렬해 새로운 문자열을 리턴하는 함수, solution을 완성해주세요.
s는 영문 대소문자로만 구성되어 있으며, 대문자는 소문자보다 작은 것으로 간주합니다.
- str은 길이 1 이상인 문자열입니다.
"Zbcdefg" | "gfedcbZ" |
나의 풀이
function solution(s) {
// 배열로 만들고 대문자먼저오게정렬 뒤집고 배열빼기
return s.split('').sort().reverse().join('')
}
배열을 만들고 대문자앞으로 오게 정렬하고 그걸 뒤집고 배열빼기
// 계속오류 걸렸던 이유는
function solution(s) {
// 배열로 만들고 대문자먼저오게정렬 뒤집고 배열빼기
return s.split('').reverse().join('')
// 이런식으로 계속해서 다른케이스에서 다 틀렸다
}
대문자는 소문자보다 작은것으로 간주한다 이걸 제대로 못봐서 sort 를 넣었다 실행에는 성공하는데 체점에는 0점이계속 나왔다
내 생각 정석 풀이
function solution(s) {
let answer = '';
let lowercase = (s.replace(/[A-Z]/g, '').split('')).sort().reverse().join('');
let uppercase = (s.replace(/[a-z]/g, '').split('')).sort().reverse().join('');
return answer = lowercase + uppercase;
}
replace 안에 정규식으로 넣어서 대문자값이랑 소문자값이 따로 남기게 하고
그걸 다 더해준다
'알고리즘' 카테고리의 다른 글
[프로그래머스] 핸드폰 번호 가리기 (0) | 2023.02.02 |
---|---|
[프로그래머스] 문자열안에 문자열 (0) | 2023.02.01 |
[프로그래머스]정수 제곱근 판별 (0) | 2023.01.29 |
[프로그래머스]하샤드 수 (0) | 2023.01.29 |
[프로그래머스]수박수박수박수박수박수? (1) | 2023.01.28 |