본문 바로가기

자기개발49

o떼기 js 프로그래머스에서 0 떼기라는 문제가 있다. n_str이라는 문자열이 주어지는데 맨 앞에 0이 있으면 때고 0이 아닌 숫자가 나올때 까지 모든 앞의 0을 떼는 문제였다. 이걸 위해 나는 정규식을 이용해서 사용하는 방법을 떠올렸다. 아무래도 문자열이다 보니 그냥 문자열에서 0을 떼기만 하면 될 것만 같았다. 그래서 정규식을 사용하는? 설명하는 많은 블로그 중에 https://inpa.tistory.com/entry/JS-%F0%9F%93%9A-%EC%A0%95%EA%B7%9C%EC%8B%9D-RegExp-%EB%88%84%EA%B5%AC%EB%82%98-%EC%9D%B4%ED%95%B4%ED%95%98%EA%B8%B0-%EC%89%BD%EA%B2%8C-%EC%A0%95%EB%A6%AC#%EC%A0%84%ED.. 2023. 7. 27.
홀수 vs 짝수 js 프로그래머스의 lv0문제인 홀수 vs 짝수 를 js로 풀어봤다. num_list라는 배열이 주어질때 가장 첫번째 원소를 1번원소라고 했을 때 홀 수 번째 원수의 합과 짝수번째 원소 중 큰 값을 반환하는 문제였다. num_list = [1,2,3,4,5]가 있다면 본래 1이 0번째 원소여야 하지만 1이 1이 된 샘으로 친다는 말이었다. 처음엔 하나의 코드 줄로 reduce를 사용해서 인덱스가 0,2,4가 되는 것들을 홀수, 1,3,5가 되는 것들을 짝수집합으로 해서 024가 되는 것을 찾는 코드를 조건으로 얘네끼리 더하고, 135가 되는 것들을 더해서 sort를 사용해서 큰 수를 1번째로 오게 한 다음 1번째를 반환하는 코드를 만들 계획이었다. 그런데 내가 로직을 짯지만 제대로 이해할 수가 없어서 홀수 부.. 2023. 7. 25.
l로만들기 js 프로그래머스에서 l로 만들기를 풀었다. 문자열이 주어지면 "l"보다 앞선 글자들은 모두 "l"로 반환하고 이보다 이후의 글자들은 그냥 반환하는 거였다. 아스키코드를 사용해서 l 까지 설정해서 거기보다 작은 거를 "l"로 반환하는 코드를 짜려고 아스키 코드 표를 찾았으나 l의 숫자만 아는게 아니라 a 부터 l 까지의 숫자를 알아야 한다는 번거로움이 존재했다. 그래서 reg를 통한 정규식을 활용하기로 변경했다. a-l로 범위를 설정한 다음에 제대로 작동하는지 확인하고 싶어서 myString.match(/[a-l]+/gi) 를 사용했는데 이게 ["abcd"] 이렇게 반환했다. match를 다르게 활용하는 방법이 있는 거 같았는데 잘 기억이 나지 않아서 replace를 사용하기로 했다. myString.repl.. 2023. 7. 24.
프로그래머스 js 배열비교하기 프로그래머스의 lv0 배열 비교하기를 풀었다. 문제는 모두가 알겟지만 문제는 두 배열의 길이가 다르다면, 배열의 길이가 긴 쪽이 더 큽니다. 배열의 길이가 같다면 각 배열에 있는 모든 원소의 합을 비교하여 다르다면 더 큰 쪽이 크고, 같다면 같습니다. 가 주어지고 arr1 -1, arr1 > arr2 => 1 arr1 = arr2 => 0 을 반환하게 만들면 되는 문제였다. 문제가 긴거 같아서 처음에 그냥 문제대로 if 문을 써서 해보려고 작성했다. arr1 -1, arr1 > arr2 => 1 먼저 하고 arr1 = arr2일때 arr1과 arr2의 합을 구해서 같으면 0 arr1이 크면 1 arr2가 크면 -1을 반환하도록 로직을 구성했고 코드도 작성했다고 생각했다. 그런데 오늘도 코드실행을 하니 통.. 2023. 7. 22.