문제
가운데 글자 가져오기
문제 설명
단어 s의 가운데 글자를 반환하는 함수, solution을 만들어 보세요. 단어의 길이가 짝수라면 가운데 두글자를 반환하면 됩니다.
재한사항
s는 길이가 1 이상, 100이하인 스트링입니다.
입출력 예
s return
"abcde" "c"
"qwer" "we"
문제 해석
1. 단어 길이가 짝수면 가운데 2글자, 홀수면 1글자 가져오기
2. if문을 쓰고 조건으로 s.length가 2로 나눠서 0이면 짝수, 아니면 홀수( num % 2 === 0)
3. 홀수 글자에서 반으로 나면 나머지 0.5가 나오는데 이걸 처리하는 함수 찾아서 적용시키자.
문제풀이
function solution(s) {
let answer = '';
if (s.length % 2 === 0){
answer = s[s.length / 2 - 1] + s[s.length / 2]
}
else {
answer = s[Math.floor(s.length/2)];
}
return answer;
}
4번째 줄은 짝수를 2로 나누면 2가 되는데 예시에서 중간 2글자를 가져와야하기에 s.length / 2 - 1와 s.length / 2를 해야한다. 그냥 s.length / 2를 하면 c만 나오는데 이유는 배열순서가 0에서 시작해서 0, 1, 2로 세기에 c를 가져온다. 그래서 2 - 1을 하는것이고 7번째줄은 Math.floor를 넣었는데 반내림하는 함수라서 나머지 0.5를 처리하기위해 사용했다.
생각보다 쉬우면서 함수를 적용시키는게 조금 어렵게 느껴졌다. 거기다 2번째로 푸는건데도 Math.floor를 생각하지 못해서 풀이에 시간이 걸렸는데 전보단 나아진것 같아 다행이라 생각했다.
'코딩테스트' 카테고리의 다른 글
| Javascipt 연습문제 - 두 정수 사이의 합 (0) | 2022.09.28 |
|---|---|
| Javascritp 연습문제 - 짝수와 홀수 (0) | 2022.09.28 |
| Javascript 연습문제 - 직사각형 별찍기 (0) | 2022.09.28 |
| Javascript 코딩테스트 연습문제 - 하샤드 수 (0) | 2022.09.28 |
| Javascript 코딩테스트 연습문제 - 자릿수 구하기 (0) | 2022.09.27 |