본문 바로가기
TIL (Today I Learned)

JS 가운데 글자 가져오기 - 알고리즘 문제

by 딩공 2022. 3. 14.

 

 

function solution(s) {
  var answer = '';
  if (s.length % 2 == 0) {
      answer += s[(s.length/2) - 1] + s[s.length/2]
  } else {
      answer += s[(s.length - 1) / 2]
  }
  return answer;
}


console.log(solution("abcde")) // c
console.log(solution("qwer"))  // we

 

 

단어 길이의 짝수와 홀수의 출력 값이 달라서 먼저 짝수와 홀수를 구분 할수 있게 만들어야 된다.

그후 문자열의 접근 하기 위해, 총길의 중간값을 알아내면된다.

그리고 문자열의 접근할때는 0이 첫번째이기 때문에 -1을 해줘야 그 문자열의 총 길이가 나온다.

# 짝수 일때는 문자열을 중간 두글자를 출력해야 하기 때문에 총길이의 중간값과 중간값에서 -1 한것을 찾아야 한다.

그렇게 찾게된 문자들을 빈 문자열인 answer에 할당 하여 마지막에 return 해주면 우리가 원하는 값이 출력이 된다.

 

위의 코드를 좀더 정리해보자~!

 

function solution(s) {
  let answer = '';
  s.length % 2 === 0 ? answer += s[(s.length/2) - 1] + s[s.length/2] : answer += s[(s.length - 1) / 2]
  return answer;
}


console.log(solution("abcde"))
console.log(solution("qwer"))

 

 

댓글