728x90
728x90
[Java] 2466. Count Ways To Build Good Strings - LeetCode Daily Challenge / Dynamic Programing(DP)
코딩테스트/leetcode2023. 5. 13. 21:44[Java] 2466. Count Ways To Build Good Strings - LeetCode Daily Challenge / Dynamic Programing(DP)

Count Ways To Build Good Strings - LeetCode Can you solve this real interview question? Count Ways To Build Good Strings - Given the integers zero, one, low, and high, we can construct a string by starting with an empty string, and then at each step perform either of the following: * Append the char leetcode.com 풀이 DP배열을 생성해, Bottom Up방식으로 풀이. dp[0]=1이 왜 1인가에 대해 고민을 좀 많이 했던 문제였다. 문자열의 길이가 0인게 없지..

[Java] 1035. Uncrossed Lines - LeetCode Daily Challenge / Dynamic Programing(DP)
코딩테스트/leetcode2023. 5. 12. 06:57[Java] 1035. Uncrossed Lines - LeetCode Daily Challenge / Dynamic Programing(DP)

Uncrossed Lines - LeetCode Can you solve this real interview question? Uncrossed Lines - You are given two integer arrays nums1 and nums2. We write the integers of nums1 and nums2 (in the order they are given) on two separate horizontal lines. We may draw connecting lines: a straigh leetcode.com 풀이 DP배열의 idx의 값은 해당 idx까지 서로 탐색을했을때, 겹치지 않는 최대 경우의 수를 나타낸다. class Solution { public int maxUncrossedL..

[Java] N으로 표현 - Lv3 프로그래머스 / 동적 계획법(Dynamic Programing)
코딩테스트/프로그래머스2023. 5. 8. 08:21[Java] N으로 표현 - Lv3 프로그래머스 / 동적 계획법(Dynamic Programing)

https://school.programmers.co.kr/learn/courses/30/lessons/42895 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 첫 풀이 최소 반복 횟수를 구하는 문제이기 때문에 Bottom-Up방식을 활용해서 8번 반복할 때까지 해당 해가 있는지 찾고, 반복횟수가 9번째가 될 때 answer = -1로 리턴해주게 하자.. 라고 생각하며 코드를 작성했다. (DP공부를 한 뒤, 간단한 문제들을 풀고 처음으로 푸는 높은 난이도(??)의 문제라 설명이 부족할 수 있음.. 지나가던 고수분들 계시면 고쳐주시면 감사하겠습니다. 많은 ..

[Java] 64.Minimum Path Sum - LeetCode / Dynamic Programing(DP)
코딩테스트/leetcode2023. 5. 7. 07:35[Java] 64.Minimum Path Sum - LeetCode / Dynamic Programing(DP)

https://leetcode.com/problems/minimum-path-sum/ Minimum Path Sum - LeetCodeCan you solve this real interview question? Minimum Path Sum - Given a m x n grid filled with non-negative numbers, find a path from top left to bottom right, which minimizes the sum of all numbers along its path. Note: You can only move either down or rigleetcode.com 풀이이차원배열 grid에서, 오른쪽, 아래로만 이동할 수 있을 때, 모든 숫자의 합을 최소화 하는..

CS/알고리즘2023. 5. 6. 07:21[알고리즘] Dynamic Programing(DP / 동적계획법) (Top-Down, Bottom-Up)

Dynamic Programing복잡한 문제를 간단한 여러 개의 문제로 나누어 푸는 방법을 말한다. 이것은 부분 문제 반복과 최적 부분 구조를 가지고 있는 알고리즘을 일반적인 방법에 비해 더욱 적은 시간 내에 풀 때 사용한다. - 위키백과  Dynamic Programing은1. 하위 문제로 쪼개지며, 하위 문제의 정답으로 해당 문제의 정답을 구할 수 있을 때(Optimal Substructure)2. 하위 문제가 겹칠 때 (Overlapping Subproblem)사용할 수 있다. Top-Bottom방식과 Bottom-Up방식이 있는데이름에서 알 수 있다시피 위에서아래로, 아래에서 위로 가는 방식인 것 같다.Top-Bottom은 재귀를 통해 메인 문제에서 작은 문제들로 쪼개어가는 과정이고Bottom-U..

728x90
728x90
image