-
백준 알고리즘, 11722 문제Algorithms/ACM_ICPC 2018. 8. 3. 15:57
풀이
앞선 11053, 11055 문제 들과 똑같은 문제이다.
다만, 코드를 그대로 가져오기 보다는 복습을 한다는 생각으로 알고리즘을 처음부터 다시 생각해보며 풀어보길 바란다.
부등호 방향만 바꿔주면 된다는 것을 알 수 있다.
코드
/*** @site: https://www.acmicpc.net/problem/11722* @github: https://github.com/7772* @auth: Landon Park* @date: 2018. 08. 03*/#include <iostream>using namespace std;int main() {int DP[1001];int arr[1001] = { 0, };int T;int i, j;int max = 1;cin >> T;for ( i = 1; i <= T; i++) cin >> arr[i];for (i = 1; i <= T; i++) {DP[i] = 1;for (j = 1; j < i; j++) {if (arr[i] < arr[j]) {if (DP[i] <= DP[j] + 1) {DP[i] = DP[j] + 1;if (max < DP[i]) {max = DP[i];}}}}}cout << max << endl;// for (i = 1; i <= T; i++) cout << DP[i] << " " << endl;return 0;}반응형'Algorithms > ACM_ICPC' 카테고리의 다른 글
백준 알고리즘, 1912 문제 (0) 2018.08.08 백준 알고리즘, 11054 문제 (0) 2018.08.03 백준 알고리즘, 11053, 11055 문제 (0) 2018.08.02 백준 알고리즘, 2156 문제 (0) 2018.08.02 백준 알고리즘, 9465 문제 (0) 2018.07.24