본문 바로가기

프로그래머스 문제/Level 1

(33)
[프로그래머스] 자연수 뒤집어 배열로 만들기 - 자바스크립트 문제 설명 문제 풀이 function solution(n) { let result = []; let strN = n.toString(); for(let i = 0; i
[프로그래머스] 자릿수 더하기 - 자바스크립트 문제 설명 문제 풀이 function solution(n) { let answer = 0; let arrN = n.toString(); 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(strings, n) { return strings.sort((a, b) => a[n] === b[n] ? a.localeCompare(b) : a[n].localeCompare(b[n])); } string메서드 중 하나인 localeCompare를 array 정렬 메서드인 sort메서드에 넣어서 문제를 풀었다. localeCompare메서드는 문자열과 문자열을 비교하는데 사용된다. 아래에 예제를 하나 들어보곘다. 'a'.localeCompare('b'); // -1 'b'.localeCompare('a'); // 1 'b'.localeCompare('b'); // 0 'a'.localeCompare('a'); // 0 이런 식으로 -1, 0, 1을..