문제정보 문제는 다음과 같습니다. 문자열과 정수가 매개변수로 주어지는데 n만큼씩 문자열을 잘라서 배열에 저장시키는 문제입니다. 제 생각엔 substring()을 활용해서 문제를 풀 수 있을 것 같아서 for문과 substring()을 사용해봤습니다. 나의풀이 function solution(my_str, n) { let answer = [] let counter = n for(i=0; i
문제정보 저는 문자열 s에서 중복인 문자들을 모두 제거하라는 조건으로 해석했습니다. 예시 "abcabcadc""d" "abdc""abcd" "hello""eho" 나의풀이 function solution(s) { return s .split('') .filter(ele => s.indexOf(ele) == s.lastIndexOf(ele)) .sort() .join('') } 처음엔 set()으로 중복을 제거하려고했는데 중복된 문자는 한개도 남기지않고 없애야해서 filter를 이용했습니다. filter로 중복이 아닌 문자로만 구성되도록 배열을 재구성해줬습니다. 다른사람의 풀이 function solution(s) { let res = []; for (let c of s) if (s.indexOf(c) =..
문제정보 JadenCase를 만드는 문제입니다. 쉽게 해결할 수 있을 것 같았는데 막히는 부분이 있어서 구글링의 도움을 살짝 받았습니다. 예시 sreturn "3people unFollowed me""3people Unfollowed Me" "for the last week""For The Last Week" 맨 처음 실수한 것이 모든 문자열이 소문자로 주어지지않는다는 것을 간과했습니다. 이걸 해결하기위해서 모든 문자열을 일단 lowercase로 만들어줄 필요가 있었습니다. 나의풀이 function solution(s) { return s .split(" ") .map((ele) => ele.charAt(0).toUpperCase() + ele.slice(1,ele.length).toLowerCase()..
문제정보 정수 두개가 주어지고 두 정수 사이의 수들의 합을 구하는 문제입니다. 그런데 약수의 개수가 홀수면 -를 해줘야하네요 예시 leftrightresult 131743 242752 나의풀이 function solution(left, right) { let answer = 0 for(i=left ; i
문제정보 문자열을 내림차순으로 정렬하는 문제입니다. 굉장히 어렵게 생각하고 풀다가 막혔었는데 알고보니 엄청 간단하게 풀 수 있었습니다. 예시 sreturn "Zbcdefg""gfedcbZ" 나의풀이 function solution(s) { return s.split('').sort().reverse().join('') }
문제정보 정수 배열과 정수 n이 매개변수로 주어집니다. 정수 n과 가장 값이 가까운 수를 return하며 가까운수가 여러개인 경우 더 작은 수를 리턴해야하는 문제입니다. 푸니까 10점이나 주네요 기분굿~ 예시 array n result [3, 10, 28] 20 28 [10, 11, 12] 13 12 값이 -1 , 0 , 1같이 타이트하게 주어지지 않고 크게 튀도록 주어지는 경우도 있었습니다. 나의풀이 function solution(array, n) { array.sort((a,b) => a - b) let find = array.map(ele => Math.abs(ele - n)) return array[find.indexOf(Math.min(...find))] } 처음에 sort를 해주지않고 답을 ..
문제정보 처음엔 팩토리얼값을 구하는 문제인줄 알고 팩토리얼 값을 구하는 코드를 짰는데 통과가 안되어서 뭐지..? 했네요 매개변수로 주어지는 정수 n보다 같거나 작은 팩토리얼값을 구하는 문제였어요 예시 nresult 362880010 73 나의풀이 function solution(n) { let counter = 1 let answer = 0 for(i=1 ; i= counter) { answer = i } } return answer } 간단하게 구현했습니다. 10!보다 큰 수는 주어지지 않으니까 i를 10까지 반복하고 팩토리얼을 n과 비교해주면서 가장 큰 팩토리얼을 찾고 리턴해줬습니다. 다른사람의 풀이 function solution(n) { let i = 1; let f = 1; while (f*i ..