본문 바로가기

자기개발/TIL35

홀수 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.
공백으로 구분하기2 js로 풀기 오늘도 프로그래머스에서 js로 코딩테스트연습을 하고 있습니다. 오늘은 어제의 연장선인 문제가 있어서 곧장 도전해 봤습니다. 바로 공백으로 구분하기 2 였는데요 어젠 split을 통해서 손쉽게 문제를 풀 수 있는 거였어요. 2는 좀더 업그레이드 되서 빈칸을 제외학고 값이 있는 문자열만 배열에 담아 반환하라는 문제였어요 먼저 저는 split을 써서 문자열을 빈칸 단위로 쪼개서 빈값은 빼서 반환하려고 했어요. 그러기 위해서 var answer = my_string.split(" ")를 써서 ["","i","","","","love","","you"] 값이 이렇게 나오는 것을 혹인 했습니다. 여기서 "" 된 값을 빼면 되는 거였어요. 그래서 저는 filter를 쓰는게 저의 js 기본 매서드를 사용법을 익히는데 .. 2023. 7. 21.