본문 바로가기

반응형

level1

[프로그래머스] level1. 이상한 문자 만들기 (javascript) 문제 문자열 s는 한 개 이상의 단어로 구성되어 있습니다. 각 단어는 하나 이상의 공백문자로 구분되어 있습니다. 각 단어의 짝수번째 알파벳은 대문자로, 홀수번째 알파벳은 소문자로 바꾼 문자열을 리턴하는 함수, solution을 완성하세요. 나의 풀이 function solution(s) { let answer = []; const tmp = s.split(&#39; &#39;); for(let i =0; i < tmp.length; i ++){ let tmp2 = tmp[i].split(&#39;&#39;) for(let j =0; j < tmp[i].length; j ++){ j % 2 === 0 ? tmp2[j] = tmp2[j].toUpperCase() : tmp2[j] = tmp2[j].toLow.. 더보기
[프로그래머스] level1. 문자열 다루기 기본 (javascript) 문제 문자열 s의 길이가 4 혹은 6이고, 숫자로만 구성돼있는지 확인해주는 함수, solution을 완성하세요. 예를 들어 s가 "a234"이면 False를 리턴하고 "1234"라면 True를 리턴하면 됩니다. 나의풀이 function solution(s) { if (!(s.length == 4 || s.length == 6)){ return false } else { const tmp = s.split(&#39;&#39;) for(let i =0;i 더보기
[프로그래머스] level1. 자연수 뒤집어 배열로 만들기 (javascript) 문제 자연수 n을 뒤집어 각 자리 숫자를 원소로 가지는 배열 형태로 리턴해주세요. 예를들어 n이 12345이면 [5,4,3,2,1]을 리턴합니다. 나의 풀이 function solution(n) { const str_arr = (n+"").split(&#39;&#39;).reverse(); let answer = [] for( let i =0; i 숫자(진수) parseInt() 숫자 -> 문자열 toString() parseInt를 사용하기 위해 문자열로 바꿔주는 작업을 해주었다. 다른이들의 풀이 function solution(n) { // 문자풀이 // r.. 더보기
[프로그래머스] level1. 키패드 누르기 (javascript) 문제 스마트폰 전화 키패드의 각 칸에 다음과 같이 숫자들이 적혀 있습니다. 이 전화 키패드에서 왼손과 오른손의 엄지손가락만을 이용해서 숫자만을 입력하려고 합니다. 맨 처음 왼손 엄지손가락은 * 키패드에 오른손 엄지손가락은 # 키패드 위치에서 시작하며, 엄지손가락을 사용하는 규칙은 다음과 같습니다. 엄지손가락은 상하좌우 4가지 방향으로만 이동할 수 있으며 키패드 이동 한 칸은 거리로 1에 해당합니다. 왼쪽 열의 3개의 숫자 1, 4, 7을 입력할 때는 왼손 엄지손가락을 사용합니다. 오른쪽 열의 3개의 숫자 3, 6, 9를 입력할 때는 오른손 엄지손가락을 사용합니다. 가운데 열의 4개의 숫자 2, 5, 8, 0을 입력할 때는 두 엄지손가락의 현재 키패드의 위치에서 더 가까운 엄지손가락을 사용합니다. 4-1... 더보기
[프로그래머스] level1. 음양 더하기 (javascript) 문제 어떤 정수들이 있습니다. 이 정수들의 절댓값을 차례대로 담은 정수 배열 absolutes와 이 정수들의 부호를 차례대로 담은 불리언 배열 signs가 매개변수로 주어집니다. 실제 정수들의 합을 구하여 return 하도록 solution 함수를 완성해주세요. 나의 풀이 function solution(absolutes, signs) { return absolutes.reduce((acc,cur,i)=> signs[i] ? acc+cur : acc - cur,0) } 초기값을 넣어주는거 잊지말자! 더보기
[프로그래머스] level1. 소수 만들기 (javascript) 문제 주어진 숫자 중 3개의 수를 더했을 때 소수가 되는 경우의 개수를 구하려고 합니다. 숫자들이 들어있는 배열 nums가 매개변수로 주어질 때, nums에 있는 숫자들 중 서로 다른 3개를 골라 더했을 때 소수가 되는 경우의 개수를 return 하도록 solution 함수를 완성해주세요. 나의 풀이 sort를 통해서 가장 큰 수 3개를 얻는다. 가장 큰 수 기준으로 나올 수 있는 소수를 모두 구한다. 주어진 배열에서 나올수 있는 3개의 합을 다 구한다. 겹치는걸 찾는다. function solution(nums) { var answer = -1; const arange = nums.sort((a,b)=>a-b).slice(nums.length-3,nums.length+1).reduce((acc,cur).. 더보기
[프로그래머스] level1. 제일 작은 수 제거하기 (javascript) 문제 정수를 저장한 배열, arr 에서 가장 작은 수를 제거한 배열을 리턴하는 함수, solution을 완성해주세요. 단, 리턴하려는 배열이 빈 배열인 경우엔 배열에 -1을 채워 리턴하세요. 예를들어 arr이 [4,3,2,1]인 경우는 [4,3,2]를 리턴 하고, [10]면 [-1]을 리턴 합니다. 의식의 흐름 function solution(arr) { if (arr.length === 1) { return [-1] } const tmp = arr.slice() tmp.sort((a,b) => a-b) const val = tmp[0] arr.splice(arr.indexOf(val),1) return arr } sort를 통해 제일 작은 수를 제거했다. 그런데 sort는 기본적으로 배열에 직접적으로 .. 더보기
[프로그래머스] level1. 직사각형 별찍기 ( javascript) 문제 이 문제에는 표준 입력으로 두 개의 정수 n과 m이 주어집니다. 별(*) 문자를 이용해 가로의 길이가 n, 세로의 길이가 m인 직사각형 형태를 출력해보세요. 나의 풀이 process.stdin.setEncoding(&#39;utf8&#39;); process.stdin.on(&#39;data&#39;, data => { const n = data.split(" "); const a = Number(n[0]), b = Number(n[1]); let tmp = "" for(let i =0;i < a ; i++){ tmp += "*" } for(let j =0;j < b ; j++){ console.log(tmp); } }); 다른 이의 정답 process.stdin.setEncoding(&#39;ut.. 더보기

반응형