티스토리 뷰

반응형

문제

회문 문자열이면 "YES" 출력, 아니면 "NO"를 출력하시오.
대소문자는 구분하지 않습니다.

 

회문 문자열 : 앞에서부터 읽을 때나 뒤에서부터 읽을 때나 같은 문자열

 

 

입력 예제

wooow

 

출력 예제

YES

 

 

풀이

방법 1

function solution(s) {
  let string = s.toLowerCase();
  let answer = "YES"
  let n = parseInt(s.length/2);
  let end = string.length - 1;

  for (let i = 0; i < n; i++) {
    if(string[i] === string[end]) end--;
    else { 
      answer = "NO"
      break;
    }
  }

  return answer;
}

 

방법 2

function solution(s) {
  let string = s.toLowerCase();
  let answer = "YES"
  let n = Math.floor(s.length/2);

  for (let i = 0; i < n; i++) {
    if(string[i] !== string[s.length-1-i]) 
      return "NO"
  }

  return answer;
}

 

방법 3

function solution(s) {
  let string = s.toLowerCase();
  let answer = "YES"

  if(string !== string.split("").reverse().join("")) return "NO"

  return answer;
}
반응형
반응형
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
«   2025/01   »
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