프로그래머스(10)
-
같은 숫자는 싫어
같은 숫자는 싫어 코딩테스트 연습 > 스택/큐 > 같은 숫자는 싫어 문제 설명 배열 arr가 주어집니다. 배열 arr의 각 원소는 숫자 0부터 9까지로 이루어져 있습니다. 이때, 배열 arr에서 연속적으로 나타나는 숫자는 하나만 남기고 전부 제거하려고 합니다. 단, 제거된 후 남은 수들을 반환할 때는 배열 arr의 원소들의 순서를 유지해야 합니다. 예를 들면, arr = [1, 1, 3, 3, 0, 1, 1] 이면 [1, 3, 0, 1] 을 return 합니다. arr = [4, 4, 4, 3, 3] 이면 [4, 3] 을 return 합니다. 배열 arr에서 연속적으로 나타나는 숫자는 제거하고 남은 수들을 return 하는 solution 함수를 완성해 주세요. 제한사항 배열 arr의 크기 : 1,000..
2023.04.11 -
3진법 뒤집기
3진법 뒤집기 코딩테스트 연습 > 월간 코드 챌린지 시즌1 > 3진법 뒤집기 문제 설명 자연수 n이 매개변수로 주어집니다. n을 3진법 상에서 앞뒤로 뒤집은 후, 이를 다시 10진법으로 표현한 수를 return 하도록 solution 함수를 완성해주세요. 제한사항 n은 1 이상 100,000,000 이하인 자연수입니다. 문제 풀이 function solution(n) { let tenrnaryNum = n.toString(3) let reverseTenrnary = [...tenrnaryNum].reverse().join('') let decimalNum = parseInt(reverseTenrnary, 3) return decimalNum } 코드 리뷰 다른 풀이 function solution(n) ..
2023.04.11 -
이상한 문자 만들기
이상한 문자 만들기 코딩테스트 연습 > 연습문제 > 이상한 문자 만들기 문제 설명 문자열 s는 한 개 이상의 단어로 구성되어 있습니다. 각 단어는 하나 이상의 공백문자로 구분되어 있습니다. 각 단어의 짝수번째 알파벳은 대문자로, 홀수번째 알파벳은 소문자로 바꾼 문자열을 리턴하는 함수, solution을 완성하세요. 제한사항 문자열 전체의 짝/홀수 인덱스가 아니라, 단어(공백을 기준)별로 짝/홀수 인덱스를 판단해야합니다. 첫 번째 글자는 0번째 인덱스로 보아 짝수번째 알파벳으로 처리해야 합니다. 문제 풀이 function solution(string) { var answer = '' var wordArr = string.split(' ') // 단어 배열 let returnString = [] wordAr..
2023.04.11 -
수박수박수박수박수박수?
수박수박수박수박수박수? 코딩테스트 연습 > 연습문제 > 수박수박수박수박수박수? 문제 설명 길이가 n이고, "수박수박수박수...."와 같은 패턴을 유지하는 문자열을 리턴하는 함수, solution을 완성하세요. 예를들어 n이 4이면 "수박수박"을 리턴하고 3이라면 "수박수"를 리턴하면 됩니다. 제한사항 n은 길이 10,000이하인 자연수입니다 문제 풀이 function solution(n) { let cnt = Math.floor(n/2) // 반복되어야 하는 횟수 let str ='수박'.repeat(cnt) // 반복 if(n%2 !== 0){ // 홀수라면 '수' 가 한번더 붙어야한다. // 길이 4 이면 수박수박 // 길이 5 이면 수박수박수 str = '수박'.repeat(cnt) +'수' } r..
2023.04.11 -
문자열 다루기 기본
문자열 다루기 기본 코딩테스트 연습 > 연습문제 > 문자열 다루기 기본 문제 설명 문자열 s의 길이가 4 혹은 6이고, 숫자로만 구성돼있는지 확인해주는 함수, solution을 완성하세요. 예를 들어 s가 "a234"이면 False를 리턴하고 "1234"라면 True를 리턴하면 됩니다. 제한사항 s는 길이 1 이상, 길이 8 이하인 문자열입니다. s는 영문 알파벳 대소문자 또는 0부터 9까지 숫자로 이루어져 있습니다. 입출력 예 s return a123 false 1234 true 문제 풀이 function solution(s) { // 길이 확인 (4또는 6) // 전부 숫자인지 확인 (나누었을때 NaN이 나오면 숫자가 아님, NaN은 Falsy한 값) isNaN 숫자면 false 숫자가 아니면 tru..
2023.04.11 -
나누어 떨어지는 숫자 배열
나누어 떨어지는 숫자 배열 코딩테스트 연습 > 연습문제 > 나누어 떨어지는 숫자 배열 문제 설명 array의 각 element 중 divisor로 나누어 떨어지는 값을 오름차순으로 정렬한 배열을 반환하는 함수, solution을 작성해주세요. divisor로 나누어 떨어지는 element가 하나도 없다면 배열에 -1을 담아 반환하세요. 제한사항 arr은 자연수를 담은 배열입니다. 정수 i, j에 대해 i ≠ j 이면 arr[i] ≠ arr[j] 입니다. divisor는 자연수입니다. array는 길이 1 이상인 배열입니다. 입출력 예 arr divisor return [5, 9, 7, 10] 5 [5, 10] [3, 2, 6] 10 [-1] arr의 원소 중 5로 나누어 떨어지는 원소는 5와 10입니다...
2023.04.11