Programmers / 문자열의 p와 y 수

산기슭곰발자·2023년 11월 15일

해당 문제는 문자열에서 P와 Y의 갯수를 구한 후 P와 Y의 갯수가 동일하면 True 그렇지 않으면 false를 return 하는 문제이다. 문제가 단순하여 if문을 활용할 수 도 있으며, 그렇지 않고도 간단하게 문제를 해결 할 수 있다.

나의 풀이 순서.

  • 매개변수에 주어진 String에서의 P의 길이(갯수)와 Y의 길이를 구하기.
  • 그 갯수를 비교하기.
  • Return하기

순으로 간단하게 내가 해야할 것들을 정리해 보았다. 식으로 표현해보자.

function solution(s){

 if ( s.toUpperCase().split("P").length === s.toUpperCase().split("Y").length) {
    return true
    } else {
    return false
 }
};
  • tuUpperCase() - 주어진 매개변수의 소문자 대문자를 모두 대문자로 바꿔주는 함수.

    split() 함수 string.split(separator, limit)

  • split() 함수는, 문자열을 'separator'로 잘라서, 'limit' 크기 이하의 배열에 잘라진 문자열을 저장하여 리턴합니다.

즉 내가 작성한 코드를 읽어보면

.split(").length (매개변수로 주어진 글자를 배열로 치환 한 후의 문자열 P의 length(길이)) 
=== 동일하다 / s.toUpperCase().split("Y").length 

= 매개변수로 주어진 코드에서의 P와 Y의 길이(갯수 / length)가 동일하다면 return true else false

로 해석이 가능하다.

개인적으로 많은 사람들이 사용할지도 모르지만, 문법과 코드읽는법에 익숙치 못한 내가 코드를 작성 및 읽을때 가장 많이 애용하는 '내멋대로' 한국어로 번역하기. 이다. 영어와 어순이 유사하다고 느껴 해당 코드도

' S를대문자로만들어서.배열로만든 String의 P의 갯수가 === S를 대문자로 만들어 배열로만든 String Y의 갯수가 동일시 '

라고 멋대로 생각해보았으나. 생각보다 초짜인 내게 도움이 많이된다. 다양한 코드를 읽어보면 언젠가는 한계가 느껴질 방법일 수 있으나 알고리즘을 푸는데 있어 많이 도움이 되고있다.

profile
곰처럼 개발해보자.

0개의 댓글