목록전체 글 (97)
개발일기
문제 설명 소인수분해란 어떤 수를 소수들의 곱으로 표현하는 것입니다. 예를 들어 12를 소인수 분해하면 2 * 2 * 3 으로 나타낼 수 있습니다. 따라서 12의 소인수는 2와 3입니다. 자연수 n이 매개변수로 주어질 때 n의 소인수를 오름차순으로 담은 배열을 return하도록 solution 함수를 완성해주세요. 제한사항 2 ≤ n ≤ 10,000 입출력 예 nresult12[2, 3]17[17]420[2, 3, 5, 7] 풀이function solution(n) { var answer = []; let num = n; let i = 2; while (num > 1) { if (num % i === 0) { num = num / i; ..
문제 설명 문자열 my_str과 n이 매개변수로 주어질 때, my_str을 길이 n씩 잘라서 저장한 배열을 return하도록 solution 함수를 완성해주세요. 제한사항 1 ≤ my_str의 길이 ≤ 1001 ≤ n ≤ my_str의 길이my_str은 알파벳 소문자, 대문자, 숫자로 이루어져 있습니다. 입출력 예 my_strnresult"abc1Addfggg4556b"6["abc1Ad", "dfggg4", "556b"]"abcdef123"3["abc", "def", "123"] 풀이function solution(my_str, n) { var answer = [] for(let i = 0; i 풀이 설명 1. 주어진 str 문자열을 잘라서 배열에 저장해야 하기 때문에 slice() 메서드와 ..
개요카카오맵 데이터 크롤링을 위해 열심히 구글링을 하는 중에 셀레니움(Selenium)과 뷰티풀 수프(Beautiful Soup)를 사용하는 사람들이 많았다. 근데 누구는 셀레니움(Selenium)만을 사용해서 크롤링을 진행했고, 누구는 뷰티풀 수프(Beautiful Soup)를 같이 사용해서 크롤링을 진행했다. 그래서 알아보기로 했다. 두개의 차이점이 뭔지. 뷰티풀 수프(Beautiful Soup)주요 특징은 무엇인가?BeautifulSoup은 HTML과 XML 파일을 구문 분석하고 탐색하기 위한 라이브러리이다.주로 정적인 웹 페이지에서 HTML 콘텐츠를 파싱하여 데이터를 추출하는 데 사용된다.사용하기 쉽고, 파싱 로직을 작성하는데 적합하다.상대적으로 가벼워서 정적인 HTML 콘텐츠를 빠르게 처리할 수..
개요카카오 지도 api에서 제공하는 데이터에는 한계가 있다. 카카오 지도에서 볼 수 있는 매장의 데이터의 양과 제공해주는 매장의 데이터의 양은 차원이 다르다. 그렇기 때문에 크롤링을 사용해서 데이터를 가져와 보기로 했다. 그러기 위해선 백엔드 부분을 알아야 한다. 열심히 찾아본 결과 Flask와 BeautifulSoup를 사용해서 크롤링을 진행해 보기로 했다. 먼저 Flask에 대해 알아보자. Flask란?Python으로 작성된 마이크로 웹 프레임워크이다. 경량화되고 유연성이 높아, 웹 애플리케이션 개발에 널리 사용된다. 라고 설명되어 있다. 솔직히 무슨 말인지 잘 와 닿지 않는다. 하지만 공식문서에서 제공하는 가장 기본적인 코드를 확인해보면 정말 간단하게 작성되어 있다. 왜 사용되는지 한번 확인해 보자..
문제 설명 1부터 13까지의 수에서, 1은 1, 10, 11, 12, 13 이렇게 총 6번 등장합니다. 정수 i, j, k가 매개변수로 주어질 때, i부터 j까지 k가 몇 번 등장하는지 return 하도록 solution 함수를 완성해주세요. 제한사항 1 ≤ i 0 ≤ k ≤ 9 입출력 예 ijkresult1131610505531020 풀이function solution(i, j, k) { var answer = ""; for(let v = i; v Number(item) === k).length return result !== 0 ? result : 0;} 풀이 설명 1. 먼저 i와 j 사이의 모든 값이 필요하므로 for문을 사용해서 answer에 사이의 모든 값을 넣어준다.2. 넣어..
문제 설명 머쓱이는 행운의 숫자 7을 가장 좋아합니다. 정수 배열 array가 매개변수로 주어질 때, 7이 총 몇 개 있는지 return 하도록 solution 함수를 완성해보세요. 제한사항 1 ≤ array의 길이 ≤ 1000 ≤ array의 원소 ≤ 100,000 입출력 예 arrayresult[7, 77, 17]4[10, 29]0 풀이function solution(array) { var answer = array.join("").split("").filter((item)=>item == 7).length return answer;} 풀이 설명 1. 배열의 요소중 한자리 수가아닌 두자리 이상의 수를 구별하기 위해(ex 77, 777) 배열을 join()을 사용해서 하나의 문자열로 만들고,..
문제 설명 문자열 s가 매개변수로 주어집니다. s에서 한 번만 등장하는 문자를 사전 순으로 정렬한 문자열을 return 하도록 solution 함수를 완성해보세요. 한 번만 등장하는 문자가 없을 경우 빈 문자열을 return 합니다. 제한사항 0 s는 소문자로만 이루어져 있습니다. 입출력 예 sresult"abcabcabc""d""abdc""abcd""hello""eho" 풀이function solution(s) { var answer = ''; for(let i = 0; i 풀이 설명 나는 그렇게 생각한다. 문제의 유형은 외우는 것이라고. 나는 이 문제의 유형을 처음 봤다. 그래서 문제를 풀지 못했다. 문제를 보고 for문을 이용해서 중복되지 않는 문자만 answer에 넣으면 되는데 중복되는 것을 ..
문제 설명 정수 배열 array와 정수 n이 매개변수로 주어질 때, array에 들어있는 정수 중 n과 가장 가까운 수를 return 하도록 solution 함수를 완성해주세요. 제한사항 1 ≤ array의 길이 ≤ 1001 ≤ array의 원소 ≤ 1001 ≤ n ≤ 100가장 가까운 수가 여러 개일 경우 더 작은 수를 return 합니다. 입출력 예 arraynresult[3, 10, 28]2028[10, 11, 12]1312 풀이function solution(array, n) { array.sort((a, b) => a - b); let absArray = array.map((item) => { return Math.abs(n - item); }); let minNum = Math.m..