반응형
프로그래머스 1단계 : 가운데 글자 가져오기
단어 s의 가운데 글자를 반환하는 함수, solution을 만들어 보세요. 단어의 길이가 짝수라면 가운데 두글자를 반환하면 됩니다.
※ 제한사항
s는 길이가 1 이상, 100이하인 스트링입니다.
※ 입출력 예
s | return |
---|---|
"abcde" | "c" |
"qwer" | "we" |
function solution(s) {
let answer = '';
answer = s.length % 2 === 0 ? s.slice(Math.floor(s.length / 2 - 1), s.length / 2 + 1)
: s.slice(Math.floor(s.length / 2), (Math.ceil(s.length / 2)));
return answer;
}
문자열 s의 길이를 2로 나눈 나머지값이 0이라면 짝수인 문자열이므로, 가운데 두글자를 반환하기 위해 slice()메서드를 사용해 s문자열의 길이를 반으로 나눈 값에 -1을한 자리부터 반복한
값에 +1을한 자리까지 출력해줍니다.( 예로 따지면 s가 'qwer'인 4개의 문자열 일 때, s.slice(1, 3)이 되겠죠?)
같은 방법으로 홀수의 경우에도 가운데 문자열만 출력되도록 하면 끝입니다.
같은 방법으로 홀수의 경우에도 가운데 문자열만 출력되도록 하면 끝입니다.
※ 다른 사람의 풀이
function solution(s) {
let i = (s.length-1)/2;
return i%1 ? (s[i-0.5] + s[i+0.5]) : s[i];
}
수학 메서드를 사용하지않고 0.5씩 더하고, 빼는 방법으로 했네요. 코드가 상당히 깔끔합니다.
반응형
'알고리즘' 카테고리의 다른 글
프로그래머스 1단계 : 평균 구하기 (2) | 2022.11.13 |
---|---|
프로그래머스 1단계 : 정수 내림차순으로 배치하기 (4) | 2022.11.13 |
프로그래머스 1단계 : 서울에서 김서방 찾기 (2) | 2022.11.09 |
프로그래머스 1단계 : 수박수박수박수박수박수? (2) | 2022.11.09 |
프로그래머스 1단계 : 없는 숫자 더하기 (8) | 2022.11.07 |
댓글