본문 바로가기

C++106

[백준][dp] 2096 내려가기 C++구현 목차https://www.acmicpc.net/problem/2096문제 문제 구현 방향NodeJs로 dp구현하다가 메모리 초과를 해결할 수 없어서 c++로 다시 만들었다.4mb제한이니 일차원 배열에 계속 초기화하는 식으로 누적했다.  코드 구현#include #include #include#include#include #includeusing namespace std;int N;int board[100001][3] = {0};vector dp;vector save;int main() { ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0); cin >> N; for (int i = 0; i > board[i][j]; } .. 2024. 10. 25.
[백준][dp] 1699 제곱수의 합 c++구현 목차https://www.acmicpc.net/problem/1699문제 문제 구현 방향처음 풀때만 가장 큰 것만 생각해서 틀렸다... 예를 들어 41이라면 최소의 값은 6^2 + 2^2 + 1^2 이 아니라 5^2 + 4^2이다.따라서 누적을 하되 제곱수를 모두 다 따져봐서 min값을 취해주어야 한다.   코드 구현#include #include #include#include#include #includeusing namespace std;int N;int dp[100003];int main() { ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0); cin >> N; for (int i = 0; i i)break; .. 2024. 10. 10.
[백준][dp] 11054 가장 긴 바이토닉 부분 수열 c++ 구현 목차https://www.acmicpc.net/problem/11054문제  참고https://be-senior-developer.tistory.com/23 [백준][dp] 11053 가장 긴 증가하는 부분 수열 c++ 구현목차 https://www.acmicpc.net/problem/11053 11053번: 가장 긴 증가하는 부분 수열 수열 A가 주어졌을 때, 가장 긴 증가하는 부분 수열을 구하는 프로그램을 작성하시오. 예를 들어, 수열 A = {10, 20, 10, 30, 20, 50be-senior-developer.tistory.com위의 문제를 풀어보면 쉽게 접근할 수 있다.  문제 구현 방향시작점에서 증가하는 가장 긴 수열과 끝점에서 증가하는 가장 긴 수열을 구해놓고 접근했다.(전 처리)그 이.. 2024. 10. 6.
[백준][dp] 2156 포도주 시식 c++구현 목차https://www.acmicpc.net/problem/2156문제 문제 구현 방향쌓인 것을 기준으로 이차원 배열을 누적해서 풀었다.쌓인 것이 0, 1, 2 를 기준으로 각각에 맞게 그전거에 누적해서 풀어주면 된다.처음에는 그냥 담고 안담고를 세어주는 식의 브루트 포스를 했는데 메모리 초과가 나니 잘못된 방법이다.   코드 구현#include #include #include#include#include #includeusing namespace std;int n;int arr[10001] = { 0 };int dp[10001][3] = { -1 };int main() { ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0); c.. 2024. 10. 5.
728x90