가운데 문자 출력

성석민·2022년 4월 22일
1

알고리즘

목록 보기
14/72
post-thumbnail

github 전체코드

문제

소문자로 된 문자열이 입력되면 그 단어의 가운데 문자를 출력
단, 단어의 길이가 짝수일 경우 가운데 2개의 문자를 출력

풀이 과정 a

  1. 입력받은 문자열과 문자열의 길이가 홀수인지 짝수인지 저장할 객체를 선언한다.
  2. String.slice 메소드를 이용해서 문자열의 길이가 홀수라면
    해당 문자열을 2로 나눈 몫 - 1부터 몫 + 1 까지의 문자열을 return 한다.
  3. String.slice 메소드를 이용해서 문자열의 길이가 짝수라면
    해당 문자열을 2로 나눈 몫부터 몫 + 1 까지의 문자열을 return 한다.
const solutionA = (numberArray) => {
  return Math.min(...numberArray);
};

const testA = solutionA([5, 3, 7, 11, 2, 15, 17]);
console.log(testA);

풀이 과정 b

  1. 최소값을 담을 변수를 선언한 후 배열의 첫 번째 요소를 할당한다.
  2. 1부터 배열의 길이만큼 순회한다.
  3. 최소값을 담은 변수와 배열의 각각의 요소를 비교하면서
    3.1 (최소값 > 배열의 각각의 요소) 조건이 만족한다면 최소값을 배열의 요소로 재할당한다.
  4. 최소값을 return 한다.
const solutionA = (word) => {
  const answer = {
    word,
    isEven: word.length % 2 === 0,
  };

  const quotient = Math.floor(answer.word.length / 2);

  return answer.isEven
    ? answer.word.slice(quotient - 1, quotient + 1)
    : answer.word.slice(quotient, quotient + 1);
};

const testA = solutionA('study');
console.log(testA);

const testB = solutionA('good');
console.log(testB);

틀린 부분이 있거나 보충해야 할 내용이 있다면 댓글이나 DM(sungstonemin)으로 알려주시면 감사하겠습니다😄

profile
기록하는 개발자

0개의 댓글