본문 바로가기

코딩테스트

(30)
[프로그래머스] 정수 내림차순으로 배치하기 - 자바스크립트 문제 설명 문제 풀이 function solution(n) { let a = n.toString().split('').sort((a, b) => b - a); let b = []; for(let i = 0; i
[프로그래머스] 이상한 문자 만들기 - 자바스크립트 문제 설명 문제 풀이 function solution(s) { let answer = ''; let arrS = s.split(' '); for(let i = 0; i
[프로그래머스] 약수의 합 - 자바스크립트 문제 설명 문제 풀이 function solution(n) { let answer = 0; for(let i = 1; i
[프로그래머스] 수박수박수박수박수박수? - 자바스크립트 문제 설명 문제 풀이 function solution(n) { let answer = ''; let waterMelon = '수박'; for(let i = 0; i < n; i++) { answer += (waterMelon[i % waterMelon.length]); } return answer; } 이런 반복 문구를 사용해야할 때는 역시 나머지 연산자 %를 활용하는 것이 좋다. 실행 결과 코드 채점하고 제출
[프로그래머스] 문자열 정수로 바꾸기 - 자바스크립트 문제 설명 문제 풀이 function solution(s) { let answer = ''; s[0] === '+' ? answer = s.slice(1) : answer = s.slice(0); return parseInt(answer); }; slice(first Index, last index)메서드를 이용하여 문제를 풀었다. last index를 설정하지 않으면 쭉 반환한다. 실행 결과 코드 채점하고 제출
[프로그래머스] 소수 찾기 - 자바스크립트 문제 설명 문제 풀이 이번엔 두 가지의 풀이를 들고 왔다. 첫 번째 풀이는 코드도 더욱 간결하고 테스트도 통과하였다. 하지만 채점하고 제출하는데 테스트 10, 11, 12번을 통과하지 못해서 효율성 검사에서 탈락했다. function solution(n) { let answer = []; for(let i = 2; i
[프로그래머스] 서울에서 김서방 찾기 - 자바스크립트 문제설명 문제풀이 function solution(seoul) { let answer = ''; let i = seoul.findIndex(a => a === 'Kim'); return answer = `김서방은 ${i}에 있다` } findIndex메서드를 써서 문자열이 같은 요소의 인덱스 번호를 받아와 문제를 풀었다. 실행 결과 코드 채점하고 제출
[프로그래머스] 문자열 다루기 기본 - 자바스크립트 문제 설명 문제 풀이 function solution(s) { let answer = false; let temp = Number(s); if((s.length === 4 || s.length === 6) && temp === parseInt(s)) { return answer = true; } else return answer = false; }; 문자열s의 모든 문자가 숫자인지 아닌지를 비교하는 것에 생각을 좀 하게 되었다. 저기서 숫자로 바꾸는 메서드를 Number와 parseInt를 쓰게 되었는데 둘 중 하나로 통일 시키면 테스트가 통과되지 않는다. 실행 결과 코드 채점하고 제출
[프로그래머스] 문자열 내림차순으로 배치하기 - 자바스크립트 문제 설명 문제 풀이 function solution(s) { let answer = ''; answer = s.split('').sort().reverse().join(''); return answer; } sort((a, b) => a - b) 는 대문자를 뒤로 배치하기 때문에 그냥 sort()를 적용한 후 reverse메서드를 통해 거꾸로 돌렸다. 여기서 더 코드를 줄이고 싶다면 아래 코드처럼 하면 된다. function solution(s) { return s.split('').sort().reverse().join(''); } 실행 결과 코드 채점하고 제출
[프로그래머스] 문자열 내 p와 y의 개수 - 자바스크립트 문제 설명 문제 풀이 function solution(s) { let p = s.toLowerCase().split('p').length; // p문자열을 ''로 반환해준다. let y = s.toLowerCase().split('y').length; // y문자열을 ''로 반환해준다. return p === y ? true : false; } 위 코드는 처음 문제를 풀었을 때 작성한 코드이다. split('string')을 쓰면 원하는 string의 문자는 사라진다. 그래서 그 것의 길이를 비교하면 된다고 판단했다. 아래 코드는 위 코드를 한 줄로 코드를 만들어 보았다. function solution(s) { return s.toLowerCase().split('p').length === s.toLo..
[프로그래머스] 두 정수 사이의 합 - 자바스크립트 문제 설명 문제 풀이 function solution(a, b) { const number = []; for(let i = -10000000; i { return prev + curr; }, 0); } } 이번 문제는 하드코딩처럼 짜 봤다. 제한 조건은 딱히 상관없는 것이었지만 그것들을 의식한다는 느낌으로 짜 봤다. 사실 연습문제를 거의 처음 풀어봤을 때 코딩한 것이라 하드코딩이 되었다. 또한 reduce메서드를 써보고 싶었다. 아래 코드는 다른 방식의 풀이 법이다. 훨씬 코드도 간단하고 보기 쉬운 것같다. function adder(a, b, c = 0){ for (let i = Math.min(a, b); i
[프로그래머스] 나누어 떨어지는 숫자 배열 - 자바스크립트 문제 설명 문제 풀이 function solution(arr, divisor) { let answer = []; for(let i = 0; i (a - b)); }; 이번 문제는 생각하기 비교적 쉽다. 실행 결과 코드 채점하고 제출