분류 전체보기 (114) 썸네일형 리스트형 [Dynamic Programming 추가연습] 효율적인 화폐 구성 Dynamic Programming 알고리즘 문제 풀이 추가 연습 문제로, '효율적인 화폐 구성' 문제를 풀어보자.앞에서 풀었던 개미전사와 비슷한 난이도의 문제이다. (난이도: ⭐⭐) 문제의 조건과 입출력 예제는 아래와 같다.N가지 종류의 화폐가 있다. 이 화폐들의 개수를 최소한으로 이용해 그 가치의 합이 M원이 되도록 하려고 한다. 이때 각 화폐는 몇 개라도 사용할 수 있으며, 사용한 화폐의 구성은 같지만 순서만 다른 것은 같은 경우로 구분한다. 예를 들어 2원, 3원 단위의 화폐가 있을 때는 15원을 만들기 위해 3원을 5개 사용하는 것이 가장 최소한의 화폐 개수이다.입력 조건) 첫째줄에 N, M이 주어진다. (1이후 N개의 줄에는 각 화폐의 가치가 주어진다. 화폐 가치는 10000보다 작거나 같은 .. Naver Cloud: AI Hands on 교육 1월 17일에는 네이버 클라우드 핸즈온 교육을 들으러 갔다. 우연히 네이버 클라우드에서 무료 교육을 제공해주는 것을 발견해서 친구와 함께 들으러 가게 되었다. 교육은 아래 링크에서 조회 및 신청할 수 있다.https://edu.ncloud.com/schedule EDU PORTAL - NAVER CLOUD PLATFORMImprove your company’s operational competitiveness with a simple and fast workflow.edu.ncloud.com 네이버 클라우드에서 제공하는 AI 클라우드 서비스들에 대해 설명해주고, 실습용 계정을 발급해주어서 하루동안 해당 서비스들을 직접 실습해 볼 수 있도록 해주는 교육이었다. NAVER CLOUD PLATFORM AI H.. Dynamic Programming: 예제 연습 Dynamic Programming 체득을 위해 예제 문제 몇가지를 풀어보려고 한다. 1. 1로 만들기(난이도 ⭐☆)2. 개미 전사(난이도 ⭐⭐)3. 바닥 공사(난이도 ⭐☆) 1. 1로 만들기해당 문제는 피보나치 수열을 dynamic programming으로 풀이할때와 거의 동일한 문제라고 볼 수 있다.이또한 피보나치 수열의 문제를 풀 때 사용했던 가지치기 도식을 떠올려주면 풀 수 있다.우선 어떤 문제인지 살펴보자.https://baekwisdom02.tistory.com/124 알고리즘 개념정리: Dynamic ProgrammingDynamic Programming이란?알고리즘 문제를 풀이할 때 최적의 해를 구하기에 연산량이 많아서 시간이 많이 필요하거나, 메모리 공간이 많이 필요한 문제들이 있다. 그.. 알고리즘 개념정리: Dynamic Programming Dynamic Programming이란?알고리즘 문제를 풀이할 때 최적의 해를 구하기에 연산량이 많아서 시간이 많이 필요하거나, 메모리 공간이 많이 필요한 문제들이 있다. 그래서 문제를 풀 때 연산 속도와 메모리 공간을 최대한으로 절약할 수 있게 효율적으로 알고리즘을 작성해야 한다.이번에 정리할 Dynamic Programming은 메모리 공간을 약간 더 사용하면 연산속도를 비약적으로 증가시킬 수 있는 방법이다. Dynamic Programming의 기본적인 아이디어를 살펴보자. 이 알고리즘은 아래 두가지 조건을 만족할 때 적용할 수가 있다.1) 큰 문제를 작은 문제로 나눌 수 있는가? -> Yes2) 작은 문제에서 구한 정답이 그것을 포함하는 큰 문제에도 동일하게 적용되는가? -> Yes 이를 만족하.. Algorithm 개념정리: Greedy Algorithm Greedy Algorithm이란?Greedy Algorithm은 최적의 값을 구해야 하는 상황에서 사용되는 기법이다.'매 선택에서 당장의 결과가 가장 최적인 답을 선택'하여 나아가는 과정이기 때문에,근시안적으로 최적의 경로를 찾아가다보면 결과적으로도 최적의 결과에 도달할 수 있을 것이라는 사고방식으로 문제를 풀어나는 방법이다. 그렇기 때문에 풀려고 하는 문제가 Greedy Algorith에 적합한 문제인지 판별 후 사용해야 한다.당장의 매 선택에 대해서는 최적이지만 종합적으로 봤을 때 문제의 결과가 최적의 값으로 도출된다는 보장은 없기 때문이다. Greedy Algorithm으로 접근할 수 있는 대표적인 상황이 '가장 적은 화폐 개수로 돈 계산하기'이다.50000, 10000, 5000, 1000, 5.. Hadoop Ecosystem과 Apache Spark 기본 지식 정리 시대의 흐름에 따라 점점 더 다양한 형태의 방대한 데이터를 처리해야 하는 시대가 왔다.기존 서버 시스템에서는 DBMS에서 데이터를 저장 및 처리했다면, 데이터의 규모가 확장되면서 DBMS의 한계가 도래하였다. 웹 크롤러 색인 처리 과정에서 생성되는 매우 큰 파일 처리 한계가 발생한 것이다.이처럼 빅데이터를 처리하기 위해 등장한 오픈소스 프레임워크 중 하나가 바로 하둡이다. 검색엔진의 작동 원리에 대해 간단히 살펴보자면 spider, crawler라고 불리는 로봇이 웹페이지를 방문해 모든 내용을 읽어오고 검색에 적합하도록 일정하게 가공하여 저장한다. 데이터 수집 ~ 처리 ~ 분석 일련의 과정은 아래와 같다.1) 데이터 소스: 내부 데이터, 외부 데이터, 미디어 등2) 수집: 로그 수집기, 크롤링 ex) 검.. 실용주의 글쓰기 - 테크 세미나 후기 기술 블로그 작성을 주제로 한 실시간 온라인 세미나에 참여하였었는데요,사실, 이전에도 지금도 블로그를 주에 1번이라도 꾸준히 쓰려고 노력은 하고 있지만...늘 작심삼일로 끝났던 경험이 많아서 세미나를 통해 동기부여를 받고 싶은 마음도 있었습니다! 기술 블로그를 꾸준히 운영하며 성장하고 있는 많은 분들의 이야기를 들으며, 왜 블로그가 개발자에게 중요한지 그리고 어떻게 하면 꾸준히 쓸 수 있는지를 다시 생각해보는 시간이었고, 해당 세미나에서 들었던 내용들을 조금 늦었지만, 지금이나마 글로 기록해보려고 합니다. 🤔 기술 블로그가 왜 중요한지??? 세미나에서 가장 먼저 다뤄진 주제는 기술 블로그가 왜 필요한가였습니다.이것은 기술블로그 뿐만 아니라 모든 학습에 적용되는 이야기이기도 할텐데, 내용을 학습하고 나만.. [9월 영 전용 세미나 후기] 이제 졸업이 약 6~7개월 정도밖에 남지 않은 시점에서 여러가지 고민들이 많아지고 있는 시점인데요,지난 9월 밋업에서는 8월 밋업에 이어서 영 전용 2차 세미나를 열어주셨습니다!이번에는 데보션 영 활동을 하셨었던 멘토분들께서 세미나를 진행해주셨는데요,그 중 기억에 남는 내용들을 한번 정리해보고자 합니다..!! 🔍 깊이 있는 경험이 중요하다!SK텔레콤 김한성 멘토님은 단순히 많은 프로젝트를 진행하는 것보다 깊이 있는 경험이 중요하다고 강조하셨습니다!특히, 기술적으로 도전적인 과제를 해결한 경험은 면접에서 자신만의 경쟁력을 어필하는 데 큰 도움이 된다고 하셨는데요. 예를 들어, 단순한 CRUD 프로젝트가 아니라, 문제를 정의하고 해결 과정을 설계하며 기술적 난제를 극복했던 경험이 차별화된다고 하셨는데, 저.. 이전 1 2 3 4 ··· 15 다음