본문 바로가기

분류 전체보기

(251)
[탐욕법,LIS] 반도체 설계(최장증가수열) 문제 TIP 위와 같이 다음 수가 이전 수보다 커야 하는 증가하는 수열을 풀기위해 LIS 알고리즘이라는 것이 따로 있다. LIS 알고리즘 일반적으로 DP로 풀어야 할 문제이다. DP 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 #include #include using namespace std; int arr[1001]; int dp[1001]; int ans; int N; int main() { cin >> N; for(int i = 1; i > arr[i]; int here = 0; for(int j = 1; j arr[j]) here = max(here, dp[j]); } dp[i] = here + 1; ans = max(ans, dp[..
[탐욕법] DNA (특정 요소의 개수 세기) 문제 TIP 1. 알파벳과 같이 어떠한 값이 나올지 이미 예측되는 경우에는 배열의 인덱스에 각각 그 값을 부여할 수 있다. 예를 들어 해당 문제의 배열 dnaCounter[4]는 A C G T 순으로 임의로 부여하였다. 이를 새로운 값이 나올때마다 객체의 새로운 인자로 추가하는 식은 문제를 어렵게 한다. 2. Hamming Distance의 합은 차이를 모두 더할 수도 있지만, 모든 문자열에서 같은 문자열을 빼는 것으로 쉽게 얻을 수도 있다. 꼭 합이라고 덧셈만을 고집하지 말자. 3. for문과 if문이 어떤 결과를 가져올지 눈으로 확인하기 전에 머리로 이해하자 CODE 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 ..
A to Z mysteries (1) The Absent Author Reading period : 10hr ( 1 hr per chapter ) Word Link : https://drive.google.com/file/d/1dSEI90eCUxk42b5k-6yADZ5D2yFySfjX/view?usp=sharing Youtube AudioBook : https://www.youtube.com/watch?v=S9OjYsiof4Q 꾸준히 영어를 접하고 있었고, 2년전이라지만 토익도 860점 정도 찍었기 때문에, 어린이 원서 정도는 어떻게 쉽게 읽힐꺼라 생각했다. 빨리 읽고 다른 책을 도전하자 생각했는데 모르거나 써먹기 좋을법한 문장과 단어를 정리하니 13페이지가 나왔다. 내용적인 측면에서 어린이 소설이라 유치할 줄 알았는데, 생각보다 재미있게 읽은 것 같다. 특히 마지막 부분..
[탐욕법 - 문자열 다루기] 문제 TIP 1. 두 단어를 비교하여 같이 만들어주어야 할 때, 실제로 같이 만들어 줄 필요가 없다. 2. 두 단어를 비교할 때 단어를 실제로 줄이고 늘리고 할 필요 없이 단어 길이의 차이만큼 반복하거나 인덱스를 이동하므로써 해결 할 수 있는 경우가 많다. CODE 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 #include #include #include using namespace std; int main() { int answer = 9999; string a; string b; cin >> a; cin >> b; int diffLength = b.size() - a.size(); for(int i=0; i
Microsoft / Typescript Express 보일러 플레이트 적용기 https://github.com/microsoft/TypeScript-Node-Starter microsoft/TypeScript-Node-Starter A starter template for TypeScript and Node with a detailed README describing how to use the two together. - microsoft/TypeScript-Node-Starter github.com 리액트와 달리 Node.js 에서 Typescript 사용은 조금 더 다른 느낌이다. 일단 왜인지 모르겠지만 webpack이나 babel의 사용없이 tsc라고 불리는 타입스크립트 컴파일러로 js파일로 만드는 과정이라던지 신기한 부분이 많다. (의도가 무엇일까...?) 일단 DB연결후..
MongoDB Atlas 로 몽고디비 사용하기 몽고디비를 사용하려고 하는데 새로운 회원에게 Mlab이 더이상 서비스 하지 않는다고 한다. 그래서 Atlas로 넘어가는데, 설명 자체가 친절해서 크게 문제가 없을거 같지만서도 용어라던지 해보지 않으면 헷갈리는 요소가 있어 정리해두려 한다. 회원가입을 하면 바로 튜토리얼을 통해 Project를 생성하게 된다. 1. 프로젝트명 딱히 쓸 일 없다. 좋은 프로젝트명을 사용하자 2. 공유 유저 협업 단계라면 작성하는데, 아니라면 그냥 프로젝트를 만들면 된다. 프로젝트 생성이후에도 수정 할 수 있으므로 일단 생성해도 무방하다. 3. Cluster 생성 사용될 데이터베이스를 Cluster라고 부르는 것 같다. 요금을 잘 읽어보고 선택하자 테스트라면 FREE TIER 옵션을 꼼꼼히 선택해주자. M0 Sandbox가 프..
타입 스크립트 Next.js의 인터페이스를 알아보자. _app.js의 클래스 컴포넌트 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 const store = () => { return createStore(Reducers, {}, composeWithDevTools(applyMiddleware(thunkMiddleware))) } class Myapp extends App { render(): JSX.Element { const { Component, store, pageProps } = this.props return ( ) } } export default withRedux(store)(Myapp) Redux에 연결된 _app.js 컴포넌트이다. App 컴포넌트와 제네릭 일반적으로 React.Component를 상..
next 보일러 플레이 pankod 분석하기 Next + Redux + Enzyme + Typescript 보일러플레이트를 찾다가, 발견한 프로젝트인데 구조를 살펴보면서 또 한없이 모자람을 느껴 한번 쓱 훑어보기로 했다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 . ├── app │ ├── proxy.js │ ├── routes.js │ └── server.js ├── documentation ├── pages │ ├── _app.tsx │ ├─..