목록Algorithm (154)
cgy12306
// https://www.acmicpc.net/problem/11057 // 오르막 수 #include using namespace std; long long dp[12]; int main() { int n; cin >> n; for (int i = 1; i
// https://www.acmicpc.net/problem/9465 // 스티커 #include #include using namespace std; int arr[2][100001], dp[2][100001]; void print(int arr[2][100001], int n) { for (int i = 0; i x; arr[i][j] = x; } } if (n == 1) { if (arr[0][1] >= arr[1][1]) cout
// https://www.acmicpc.net/problem/11055 // 가장 큰 증가하는 부분 수열 #include #include using namespace std; int arr[1001] = { 0, }, dp[1001] = { 0, }; int main() { ios::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL); int n; cin >> n; for (int i = 0; i > arr[i]; dp[i] = arr[i]; } for (int i = 1; i arr[j] && dp[i] < dp[j] + arr[..
// https://www.acmicpc.net/problem/11722 // 가장 긴 감소하는 부분 수열 #include #include using namespace std; int arr[1001], dp[1001]; int main() { ios::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL); int n; cin >> n; for (int i = 0; i > arr[i]; } fill(dp, dp + 1000, 1); for (int i = 1; i < n; i++) { for (int j = 0; j < i; j++) { if (arr[i] < arr[j] && dp[i]
// https://www.acmicpc.net/problem/11053 // 가장 긴 증가하는 부분 수열 #include #include using namespace std; int arr[1001] = { 0, }, dp[1001] = { 0, }; int main() { ios::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL); int n; cin >> n; for (int i = 0; i > arr[i]; } fill(dp, dp + 1000, 1); for (int i = 1; i arr[j] && dp[i]
// https://www.acmicpc.net/problem/1912 // 연속합 #include #include using namespace std; int main() { ios::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL); int n, dp[100001] = { 0, }, arr[100001] = { 0, }; cin >> n; for (int i = 0; i > arr[i]; } dp[0] = arr[0]; int sum = dp[0]; for (int i = 1; i < n; i++) { dp[i] = max(dp[i - 1] + arr[i], arr[i]); sum = max(sum, dp[i]); } cout
// https://www.acmicpc.net/problem/9461 // 파도반 수열 #include using namespace std; int main() { ios::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL); long long dp[101]; int n, a; cin >> a; for (int j = 0; j > n; dp[1] = 1; dp[2] = 1; dp[3] = 1; dp[4] = 2; dp[5] = 2; for (int i = 6; i