본문 바로가기

알고리즘 문제 풀이

(64)
프로그래머스 [LEVEL 1] - 이상한 문자 만들기 programmers.co.kr/learn/courses/30/lessons/12930 코딩테스트 연습 - 이상한 문자 만들기 문자열 s는 한 개 이상의 단어로 구성되어 있습니다. 각 단어는 하나 이상의 공백문자로 구분되어 있습니다. 각 단어의 짝수번째 알파벳은 대문자로, 홀수번째 알파벳은 소문자로 바꾼 문자열을 programmers.co.kr 풀이는 JS로 하였다 function solution(s) { let count = 0; const answer = []; for (let i = 0; i < s.length; i++) { if (s[i] === " ") { count = 0; answer.push(" "); } else if (count % 2 == 0) { answer.push(s[i].toU..
프로그래머스[LEVEL 1] - 제일 작은 수 제거하기 programmers.co.kr/learn/courses/30/lessons/12935 코딩테스트 연습 - 제일 작은 수 제거하기 정수를 저장한 배열, arr 에서 가장 작은 수를 제거한 배열을 리턴하는 함수, solution을 완성해주세요. 단, 리턴하려는 배열이 빈 배열인 경우엔 배열에 -1을 채워 리턴하세요. 예를들어 arr이 [4,3,2,1 programmers.co.kr function solution(arr) { let min = Math.min(...arr); arr.splice(arr.indexOf(min), 1); if (arr.length < 1) return [-1]; return arr } 정말 별거 아닌 문제인데 첨에 문제 이해를 잘못해서 내림차순으로 정렬한뒤 최솟값을 빼는 뻘짓을..
프로그래머스[LEVEL 1] - 수박수박수박수박수박수 ? programmers.co.kr/learn/courses/30/lessons/12922 코딩테스트 연습 - 수박수박수박수박수박수? 길이가 n이고, "수박수박수박수...."와 같은 패턴을 유지하는 문자열을 리턴하는 함수, solution을 완성하세요. 예를들어 n이 4이면 "수박수박"을 리턴하고 3이라면 "수박수"를 리턴하면 됩니다. 제한 programmers.co.kr 문제 풀이는 JS로 하였다 function solution(n) { let answer = "" for(let i = 1; i < n + 1; i++){ if (i % 2) answer += '박'; else answer += '수'; } return answer; }
프로그래머스 [LEVEL 1] - 두 정수 사이의 합 programmers.co.kr/learn/courses/30/lessons/12912 코딩테스트 연습 - 두 정수 사이의 합 두 정수 a, b가 주어졌을 때 a와 b 사이에 속한 모든 정수의 합을 리턴하는 함수, solution을 완성하세요. 예를 들어 a = 3, b = 5인 경우, 3 + 4 + 5 = 12이므로 12를 리턴합니다. 제한 조건 a와 b가 같은 경우 programmers.co.kr 풀이는 js로 하였습니다 function solution(a, b) { let sum = 0; if (b < a) { for(let i = b; i < a + 1; i++) { sum += i; } } else { for(i = a; i < b + 1; i++) { sum += i; } } return su..
프로그래머스[LEVEL 1] - 가운데 글자 가져오기 programmers.co.kr/learn/courses/30/lessons/12903 코딩테스트 연습 - 가운데 글자 가져오기 단어 s의 가운데 글자를 반환하는 함수, solution을 만들어 보세요. 단어의 길이가 짝수라면 가운데 두글자를 반환하면 됩니다. 재한사항 s는 길이가 1 이상, 100이하인 스트링입니다. 입출력 예 s ret programmers.co.kr 문제 풀이는 JS로 하였다 function solution(s) { const S_LENGTH = s.length; const center = parseInt(S_LENGTH / 2); if (S_LENGTH % 2 === 0) { return s.substr(center-1,2); } return s.slice(center,center..
프로그래머스[LEVEL1] - 짝수와 홀수 programmers.co.kr/learn/courses/30/lessons/12937 코딩테스트 연습 - 짝수와 홀수 정수 num이 짝수일 경우 "Even"을 반환하고 홀수인 경우 "Odd"를 반환하는 함수, solution을 완성해주세요. 제한 조건 num은 int 범위의 정수입니다. 0은 짝수입니다. 입출력 예 num return 3 "Odd" 4 "Even" programmers.co.kr 풀이는 JS로 하였다 function solution(num) { if( num % 2 === 0) return "Even"; return "Odd"; }
프로그래머스[LEVEL 1] - 서울에서 김서방 찾기 programmers.co.kr/learn/courses/30/lessons/12919 코딩테스트 연습 - 서울에서 김서방 찾기 String형 배열 seoul의 element중 "Kim"의 위치 x를 찾아, "김서방은 x에 있다"는 String을 반환하는 함수, solution을 완성하세요. seoul에 "Kim"은 오직 한 번만 나타나며 잘못된 값이 입력되는 경우는 없습니 programmers.co.kr 예전에 파이썬으로 한번 풀었던 문제입니다 JS로 풀어보겠습니다 function solution(seoul) { for (let i = 0; i < seoul.length; i++) { if (seoul[i] === "Kim") { return `김서방은 ${i}에 있다`; } } } indexOf() ..
프로그래머스[LEVEL 1] - 문자열 내 p와 y의 개수 programmers.co.kr/learn/courses/30/lessons/12916 코딩테스트 연습 - 문자열 내 p와 y의 개수 대문자와 소문자가 섞여있는 문자열 s가 주어집니다. s에 'p'의 개수와 'y'의 개수를 비교해 같으면 True, 다르면 False를 return 하는 solution를 완성하세요. 'p', 'y' 모두 하나도 없는 경우는 항상 True를 programmers.co.kr 먼저 JS 풀이입니다 function solution(s){ s = s.toLowerCase(); const p = s.match(/p/g); const y = s.match(/y/g); if( p != null && y != null){ if(p.length === y.length){ return p.l..