본문 바로가기

릿코드23

C++ 62. Unique Paths(Leet Code) Leet Code_62. Unique Paths Dynamic Programming https://leetcode.com/problems/unique-paths/ 문제 해석 이 문제를 풀기위해 이해해야 할 내용은 다음과 같습니다. 목표 Start부터 Finish 까지 갈수있는 중복되지 않는 모든 경로 구하기 ​ 방법 1. Start부터 Finish 까지 갈수있는 중복되지 않는 모든 경로 구하기 결과 Start부터 Finish 까지 갈수있는 중복되지 않는 모든 경로 구하기 통과한 코드 class Solution { public: int uniquePaths(int m, int n) { if(n == 0 && m == 0) return 0; vector dp(n,vector(m,0)); dp[0][0] = .. 2020. 6. 18.
C++ 11. Container With Most Water(Leet Code) Leet Code_11. Container With Most Water Dynamic Programming https://leetcode.com/problems/container-with-most-water/ 문제 해석 이 문제를 풀기위해 이해해야 할 내용은 다음과 같습니다. 목표 각 라인 사이에서 물을 최대로 담을수 있는 수조의 크기 ​ 방법 1. 각 라인 사이에서 물을 최대로 담을수 있는 수조의 크기 결과 각 라인 사이에서 물을 최대로 담을수 있는 수조의 크기 Test Case는 다 통과했지만 시간 초과된 코드 class Solution { public: int maxArea(vector& height) { int nMax = 0; int nSize = height.size(); for(int i =.. 2020. 6. 17.
C++ 22. Generate Parentheses(Leet Code) Leet Code_22. Generate Parentheses Dynamic Programming https://leetcode.com/problems/generate-parentheses/ 문제 해석 이 문제를 풀기위해 이해해야 할 내용은 다음과 같습니다. 목표 n개의 괄호를 표현할 수 있는 모든 경우의 수를 만들기 ​ 방법 1. n개의 괄호를 표현할 수 있는 모든 경우의 수를 만들기 결과 n개의 괄호를 표현할 수 있는 모든 경우의 수를 만들기 통과한 코드 class Solution { public: vector generateParenthesis(int n) { vectorans; int tail=0,left=n,right=n,k=0; string s(n*2, 'a'); dfs(tail,left,ri.. 2020. 6. 16.
C++ 2. Add Two Numbers(Leet Code) Leet Code_2. Add Two Numbers Dynamic Programming https://leetcode.com/problems/add-two-numbers/ 문제 해석 이 문제를 풀기위해 이해해야 할 내용은 다음과 같습니다. 목표 반대로 되어있는 node들을 각 자리별로 더하여 다시 반대로 node를 만든다 ​ 방법 1.반대로 되어있는 node 2. 반대로 계산한다 3. 10이 넘는 경우 뒤의 node로 추가해준다 결과 반대로 되어있는 node들을 각 자리별로 더하여 다시 반대로 node를 만든다 통과한 코드 class Solution { public: ListNode* addTwoNumbers(ListNode* l1, ListNode* l2) { ListNode* head=NULL, *p.. 2020. 6. 13.