Problem/이분탐색
[C/C++] BOJ 12015 :: 가장 긴 증가하는 부분 수열 2
지무룩
2019. 2. 25. 11:23
BOJ 12015 :: 가장 긴 증가하는 부분 수열 2
문제 링크 : https://www.acmicpc.net/problem/12015
나의 코드
Github : https://github.com/j2wooooo/Daliy_Algorithms/blob/master/Daliy_Algorithms/BOJ_12015/BOJ_12015.cpp
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 | // 백준알고리즘 12015번 :: 가장 긴 증가하는 부분 수열 2 #include<iostream> #include<algorithm> using namespace std; int N; int ans = 1; int num; int lis[1000002]; int main() { cin >> N; cin >> lis[ans]; for (int i = 2; i <= N; i++) { cin >> num; if (lis[ans] < num) lis[++ans] = num; else { auto p = lower_bound(lis+1, lis + ans, num); *p = num; } } cout << ans; return 0; } | cs |