본문 바로가기

프로그래머스4

[Algorithm 030] JS - 자연수 뒤집어 배열로 만들기 (Level 01) 문제 출처 : 프로그래머스 prorammers - 자연수를 뒤집어 배열로 만들기 (링크) 문제 설명 자연수 n을 뒤집어 각 자리 숫자를 원소로 가지는 배열 형태로 리턴해주세요. 예를들어 n이 12345이면 [5,4,3,2,1]을 리턴합니다. 제한사항 n은 10,000,000,000이하인 자연수입니다. A. 내가 푼 답 function solution(n) { var answer = []; do{ answer.push(n % 10); n = Math.floor(n / 10); }while(n > 0) return answer; } 자료형의 변화를 최소화하여 푸는 방식 do...while과 %(나머지 연산자)를 사용 전에 풀었던 하샤드 수 구하기, 정수 내림차순으로 배치하기와 비슷한 로직이라 금방 풀 수 있.. 2021. 12. 2.
[Algorithm 029] JS - 정수 내림차순으로 배치하기 (Level 01) 문제 출처 : 프로그래머스 prorammers - 정수 내림차순으로 배치하기 (링크) 문제 설명 함수 solution은 정수 n을 매개변수로 입력받습니다. n의 각 자릿수를 큰것부터 작은 순으로 정렬한 새로운 정수를 리턴해주세요. 예를들어 n이 118372면 873211을 리턴하면 됩니다. 제한사항 n은 1이상 8000000000 이하인 자연수입니다. 처음 접근 법 숫자값에 변화를 주지 않고 사용해보려 생각했다. 하샤드 수 문제와 비슷하게 10으로 나눈 나머지 값으로 각 자릿 수를 때어내 접근 할 수 있을 것이라 생각했다. function solution(n) { var answer = n; var arr = [] do{ arr.push(answer % 10); } while(answer > 0) ret.. 2021. 11. 22.
[Algorithm 024] JS - 평균 구하기 (Level 01) 문제 출처 : 프로그래머스 prorammers - 평균 구하기 (링크) 문제 설명 정수를 담고 있는 배열 arr의 평균값을 return하는 함수, solution을 완성해보세요. 제한사항 arr은 길이 1 이상, 100 이하인 배열입니다. arr의 원소는 -10,000 이상 10,000 이하인 정수입니다. A. 내가 푼 답 function solution(arr) { var answer = 0; for (let i = 0; i < arr.length; i++) { answer += arr[i]; } return answer / arr.length; } for문을 ES6의 for...of 문법으로 바꿔보기 function solution(arr) { var answer = 0; for (let value .. 2021. 11. 11.
[Algorithm 017] JS - 숫자 문자열과 영단어 (2021 카카오 채용연계형 인턴십) 문제 출처 : 프로그래머스 prorammers - 2021 카카오 채용연계형 인턴십 문제 (링크) 숫자 문자열과 영단어 네오와 프로도가 숫자놀이를 하고 있습니다. 네오가 프로도에게 숫자를 건넬 때 일부 자릿수를 영단어로 바꾼 카드를 건네주면 프로도는 원래 숫자를 찾는 게임입니다. 다음은 숫자의 일부 자릿수를 영단어로 바꾸는 예시입니다. 1478 → "one4seveneight" 234567 → "23four5six7" 10203 → "1zerotwozero3" 이렇게 숫자의 일부 자릿수가 영단어로 바뀌어졌거나, 혹은 바뀌지 않고 그대로인 문자열 s가 매개변수로 주어집니다. s가 의미하는 원래 숫자를 return 하도록 solution 함수를 완성해주세요. 참고로 각 숫자에 대응되는 영단어는 다음 표와 같.. 2021. 11. 3.