DP

    [class5] (백준 12852) 1로 만들기 2

    알고리즘 dp [문제 본문] 더보기 HTML 삽입 미리보기할 수 없는 소스 [푼 코드] #include #include #define MAXNUM 10000001 using namespace std; int N; int dp[MAXNUM]; int before[MAXNUM]; int main() { ios::sync_with_stdio(false); cin.tie(); cout.tie(); cin >> N; dp[1] = 0; before[1] = -1; for (int i = 2; i

    [class4] (백준 11054) 가장 긴 바이토닉 부분 수열

    알고리즘 dp [문제 본문] 더보기 HTML 삽입 미리보기할 수 없는 소스 [푼 코드] #include using namespace std; int N; int arr[1001]; int dp[1001][2]; // [n][0]에 오름차순 [n][1]에 내림차순 int Solved() { //오름차순 for (int i = 0 ; i = i; j--) { if (arr[j] < arr[i] && dp[i][1] < dp[j][1] + 1) { dp[i][1] = dp[j][1] + 1; } } } int result=0; for (int i =..

    [class4] (백준 2096) 내려가기

    HTML 삽입 미리보기할 수 없는 소스 #include #include #define MAXNUM 987654321 using namespace std; struct Pos { int min = MAXNUM; int max; }; int N; int minNum = MAXNUM; int maxNum = -1; Pos arr[2][3]; int dx[3] = { -1,0,1 }; vector v; bool IsRange(int x) { return (x >= 0 && x < 3); } void CalculLine(int input[3]) { bool isCheck; for (int i = 0; i < 3; i++) { isCheck = false; for (int j = 0; j < 3; j++) { in..