본문 바로가기
300x250

개발 공부/알고리즘 개념+문제풀이46

[프로그래머스 1단계] 문자열 내림차순으로 배치하기 with 자바스크립트 문제설명 문자열 s에 나타나는 문자를 큰것부터 작은 순으로 정렬해 새로운 문자열을 리턴하는 함수, solution을 완성해주세요. s는 영문 대소문자로만 구성되어 있으며, 대문자는 소문자보다 작은 것으로 간주합니다. 주의사항 str은 길이 1 이상인 문자열입니다. 입출력예시 코드 function solution(s) { return s.split('').sort().reverse().join('') } 해석 각 글자마다 배열로 만들고, 오름차순 정렬후, reverse(반전)해주고, 다시 문자열로 합친다. 한줄평 링크 https://programmers.co.kr/learn/courses/30/lessons/12917 2021. 6. 25.
[프로그래머스 1단계] 서울에서 김서방 찾기 with 자바스크립트 문제설명 String형 배열 seoul의 element중 "Kim"의 위치 x를 찾아, "김서방은 x에 있다"는 String을 반환하는 함수, solution을 완성하세요. seoul에 "Kim"은 오직 한 번만 나타나며 잘못된 값이 입력되는 경우는 없습니다. 주의사항 seoul은 길이 1 이상, 1000 이하인 배열입니다. seoul의 원소는 길이 1 이상, 20 이하인 문자열입니다. "Kim"은 반드시 seoul 안에 포함되어 있습니다. 입출력예시 코드 반복문 function solution(seoul) { for(let i =0 ; i 2021. 6. 25.
[프로그래머스 1단계] 수박수박수박수박수박수? with 자바스크립트 문제설명 길이가 n이고, "수박수박수박수...."와 같은 패턴을 유지하는 문자열을 리턴하는 함수, solution을 완성하세요. 예를들어 n이 4이면 "수박수박"을 리턴하고 3이라면 "수박수"를 리턴하면 됩니다. 주의사항 n은 길이 10,000이하인 자연수입니다. 입출력예시 코드 반복문 코드 function solution(n) { var answer = ''; for(let i =1; i 2021. 6. 25.
[프로그래머스 1단계] 문자열을 정수로 바꾸기 문제설명 문자열 s를 숫자로 변환한 결과를 반환하는 함수, solution을 완성하세요. 주의사항 입출력예시 예를들어 str이 "1234"이면 1234를 반환하고, "-1234"이면 -1234를 반환하면 됩니다. str은 부호(+,-)와 숫자로만 구성되어 있고, 잘못된 값이 입력되는 경우는 없습니다. 코드 function solution(s) { return Number(s) } 해석 한줄평 문자열을 숫자로 바꾸기 링크 https://programmers.co.kr/learn/courses/30/lessons/12925 2021. 6. 25.
[프로그래머스 1단계] 약수의 합 with javascript 문제설명 정수 n을 입력받아 n의 약수를 모두 더한 값을 리턴하는 함수, solution을 완성해주세요. 주의사항 n은 0 이상 3000이하인 정수입니다. 입출력예시 코드 function solution(n) { let answer = 0; for(let i=1; i 2021. 6. 25.
[프로그래머스 1단계]이상한 문자 만들기 with javascript 문제설명 문자열 s는 한 개 이상의 단어로 구성되어 있습니다. 각 단어는 하나 이상의 공백문자로 구분되어 있습니다. 각 단어의 짝수번째 알파벳은 대문자로, 홀수번째 알파벳은 소문자로 바꾼 문자열을 리턴하는 함수, solution을 완성하세요. 주의사항 문자열 전체의 짝/홀수 인덱스가 아니라, 단어(공백을 기준)별로 짝/홀수 인덱스를 판단해야합니다. 첫 번째 글자는 0번째 인덱스로 보아 짝수번째 알파벳으로 처리해야 합니다. 입출력예시 코드 function solution(s) { let arr = s.split(' ') let result = []; for(let i = 0; i{ if(idx % 2 === 0){ return word.toUpperCase() } else if(word % 2 !== 0).. 2021. 6. 24.
[프로그래머스 1단계] 자릿수 더하기 with javascript 문제설명 자연수 N이 주어지면, N의 각 자릿수의 합을 구해서 return 하는 solution 함수를 만들어 주세요. 예를들어 N = 123이면 1 + 2 + 3 = 6을 return 하면 됩니다. 주의사항 N의 범위 : 100,000,000 이하의 자연수 입출력예시 코드 function solution(num) { return String(num).split('').reduce((a,c)=> Number(a) + Number(c),0); } 해석 숫자를 문자열로 만들고 split으로 배열을 만든다. reduce함수를 사용하여 누적값을 리턴한다. 이때 요소들은 문자열이기에 숫자로 바꿔서 리턴한다.기 테스트 21개 중에 마지막 한개가 계속 통과되지 않아 초기값에 0을 주니 테스트 통과가 되었다. 한줄평 .. 2021. 6. 24.
[프로그래머스 1단계] 자연수 뒤집어 배열로 만들기 문제설명 자연수 n을 뒤집어 각 자리 숫자를 원소로 가지는 배열 형태로 리턴해주세요. 예를들어 n이 12345이면 [5,4,3,2,1]을 리턴합니다. 주의사항 n은 10,000,000,000이하인 자연수입니다. 입출력예시 코드 function solution(n) { return n.toString().split('').reverse().map((str)=> Number(str)) } 해석 숫자를 문자열로 바꿔주고 배열로 만든다. reverse를 사용하여 배열안의 요소를 뒤집고, map을 사용해서 안의 요소를 숫자로 바꿔준다. 한줄평 reverse 알아갑니다. 배열뒤집기 링크 https://programmers.co.kr/learn/courses/30/lessons/12932 2021. 6. 24.
[알고리즘 ]DFS 경로 탐색 경우의 수-인접행렬 with javascript 문제설명 방향그래프가 주어지면 1번 정점에서 n번 정점으로 가는 모든 경로의 가지 수를 출력하는 프로그램을 작성하세요. 예시) 1번정점에서 5번 정점까지 가는 경우의 수는 1->2->3->4->5 1->2->5 1->3->4->2->5 1->3->4->5 1->4->2->5 1->4->5 총 6가지이다. 입출력예시 총 가지수를 출력한다. let arr = [[1,2],[1,3],[1,4],[2,1],[2,3],[2,5],[3,4],[4,2],[4,5]]; console.log("리턴값 :", countDfs(5,arr)); 코드 function countDfs(n, arr) { let count = 0; let graph = Array.from(Array(n + 1), () => Array(n + 1)... 2021. 6. 24.
반응형