티스토리 뷰

알고리즘/코딩테스트 공부

1-15 가운데 문자 출력

YG - 96년생 , 강아지 있음, 개발자 희망 2021. 11. 24. 23:00

문제

소문자로 된 단어(문자열)가 입력되면 그 단어의 가운데 문자를 출력하는 프로그램을 작성하세
요. 단 단어의 길이가 짝수일 경우 가운데 2개의 문자를 출력합니다.

풀이

function solution(s) {
  let answer = "";
  let num = s.length;
  if (num % 2 === 0) {
    answer += s[num / 2 - 1];
    answer += s[num / 2];
  } else if (num % 2 === 1) {
    console.log(s[2]);
    answer += s[Math.floor(num / 2)];
  }
  return answer;
}
console.log(solution("stud"));

answer +=  s[인덱스] 로 풀었습니다

다른풀이

function solution(s) {
  let answer = "";
  let mid = Math.floor(s.length / 2);
  //console.log(mid);
  if (s.length % 2 === 1) {
    answer = s.substring(mid, mid + 1);
  } else if (s.length % 2 === 0) {
    answer = s.substring(mid - 1, mid + 1);
  }
  return answer;
}
console.log(solution("stud"));

substring() 을 이용하여 풀었습니다.

substring()

substring() 메소드는 string 객체의 시작 인덱스로 부터 종료 인덱스 전 까지 문자열의 부분 문자열을 반환합니다.

 

https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/String/substring

 

String.prototype.substring() - JavaScript | MDN

substring() 메소드는 string 객체의 시작 인덱스로 부터 종료 인덱스 전 까지 문자열의 부분 문자열을 반환합니다.

developer.mozilla.org

다른풀이

function solution(s) {
  let answer = "";
  let mid = Math.floor(s.length / 2);
  //console.log(mid);
  if (s.length % 2 === 1) {
    answer = s.substr(mid, 1);
  } else if (s.length % 2 === 0) {
    answer = s.substr(mid - 1, 2);
  }
  return answer;
}
console.log(solution("study"));

substr 을 이용하여 풀었습니다

 

substr() 메서드는 문자열에서 특정 위치에서 시작하여 특정 문자 수 만큼의 문자들을 반환합니다

 

MDN 에서는 권장하지 않는 방법이라고 합니다.

 

https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/String/substr

 

String.prototype.substr() - JavaScript | MDN

substr() 메서드는 문자열에서 특정 위치에서 시작하여 특정 문자 수 만큼의 문자들을 반환합니다.

developer.mozilla.org

 

'알고리즘 > 코딩테스트 공부' 카테고리의 다른 글

1-17 중복단어제거  (0) 2021.11.25
1-16 중복문자제거  (0) 2021.11.25
1-14 가장 긴 문자열  (0) 2021.11.24
1-13 대소문자 변환  (0) 2021.11.24
1-12 대문자로 통일  (0) 2021.11.24
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함