피보나치 수열과 프로그래머스 땅따먹기 문제로 알아보는 Dynamic Programming (동적 프로그래밍)

https://programmers.co.kr/learn/courses/30/lessons/12913 자세한 문제는 programmers를 통해 확인 해 주세요. 문제 땅따먹기라고 하지만, 우리가 알고있는 땅따먹기와는 거리가 있습니다. 차라리 어렸을 적 하고 놀던 "사방치기"를 떠올리는 것이 조금 더 가깝습니다. 맨 첫줄 부터 시작해서 1 2 3 5 5 6 7 8 4 3 2 1 한줄씩 아래로 내려가는데, 일단 지금 밟은 열은 다음번 행에서 또 밟을 수가 없습니다. 예를 들어 첫 줄에서 5로 시작했다면, 다음 줄에서는 8을 밟을 수 없습니다. 탐욕법 무조건 지금 상황에서의 최선을 선택하는 "탐욕법" 으로 문제를 푼다면 다음 줄에서 더 큰 숫자의 기회를 잃을 수 있기때문에 다른 접근이 필요합니다. 위의 예시..

Development/Problem Solving 2021.07.31
티스토리 마크다운 Github 스타일로 변경하기

Intro 티스토리에는 데이터 백업 기능이 없기 때문에 제가 작성한 블로깅 내용들을 추후에 migration 시켜야 할 때를 대비해 markdwon 형식으로 작성 하며, 작성 내용들을 하나한 백업 해 두려고 하는데요. md로 작성하는 글들은 첨부 이미지들 또한 Github에 호스팅 하며 링크를 첨부해 작성 하고 있습니다. 그런 의미에서 얼마전 Typora로 블로그에 올릴 md 파일을 하나 작성했었습니다. Github markdown 스타일로 작성을 했는데, 그대로 마크다운으로 붙여넣었는데, 전혀 의도대로 렌더링이 되지 않습니다. 지금부터 Tistory의 마크다운 을 Github 스타일로 변경해보도록 하겠습니다. 블로그 관리 홈의 "꾸미기" - "스킨 편집" 으로 갑니다. 이제 우측 상단의 "스킨 편집" ..

Development/HTML ⁄ CSS 2021.07.31
아이폰 어플 만들기 01 - iOS 개발환경 세팅하기

iOS 개발에 앞서 개발환경을 세팅해야 합니다. iOS는 Xcode를 사용해 개발 할 수 있으며, 당연하지만 Mac book, Mac Mini , iMac 등의 Mac 제품이 필요합니다. 평점 상태가.. 당연하게도 Xcode는 Appstore에서 다운 받을 수 있습니다. 하지만.. 아름다운 Size를 보시라.. 용량이 무려 11.7 GB 입니다. 다들 아시겠지만 앱스토어에서 뭔가 다운받을때는 속도가 애매합니다. 그래서. https://developer.apple.com/download/all/ 에서 다운받는 것을 권장합니다. 해당 페이지에 들어가면 Xcode beta 버전이 제일 먼저 보이는데요, 스크롤을 조금 내리면 Appstore에 올라온 버전과 일치하는 버전을 찾을 수 있습니다. Xcode 12.5..

Development/Develop Tools 2021.07.30
DBeaver 설치 하고 Oracle, MariaDB 접속해보기

DBeaver 설치하고 Oracle, MariaDB 접속해보기 DBeaver는 SQL 클라이언트이자 데이터베이스 관리 도구 입니다. RDBMS의 경우에는 JDBC API를 사용하여 JDBC 드라이버를 통해 데이터베이스와 통신합니다. 또한 NOSQL의 경우에는 사유 데이터베이스 드라이버를 사용합니다. SQL Developer를 사용하면서 m1 맥북에서 사용하기 정말 불편했을때, 아. 차라리 내가 java 기반으로 혹은 웹 어플리케이션으로 SQL Client를 만들어서 쓰는게 편하겠다. 라고 생각하며 머리속으로만 간단한 구조를 구상 해 본 적이 있었는데, 그걸 실제로 누군가가 만들어 둔게 DBeaver 입니다. 예전에 그렇게 SQL client들을 찾아봤을때는 왜 못찾았었는지 이상하네요. 막상 사용해보니 정..

Development/Develop Tools 2021.07.29
무한깊이 그리고 너비우선탐색 BFS

Intro DFS DFS는 트리나 그래프에서 한 루트로 검색하다가 특정 상황에서 최대한 깊숙히 들어가서 확인 한 뒤, 다시 돌아가 다른 루트를 탐색하는 방식입니다. 미로찾기를 생각하면 쉬운데요, 한 방향으로 끝까지 들어갔다가 막다른 길에 다다르면 (트리의 바닥에 도착) 왔던 길을 돌아가서 다른 방향으로 갑니다. 이 일을 찾는 값이 나올 때까지 혹은 모든 트리를 순회 할 때 까지 반복합니다. DFS의 가장 큰 약점은 깊이가 무한으로 이어지면 빠져나올 수 없다는 점 입니다. 미로를 가다보면 왔던길이 또 나타나는 그런 미로도 있습니다. 가끔 등산을 할때도 그런 길에 들어갔다가 왔던 길에 다시 도착하는 경험을 해본 분들이 있을텐데요, 이럴 경우는 BFS를 이용해 해결 해야 합니다. BFS BFS는 너비우선탐색 ..

Development/Problem Solving 2021.07.28