#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
/*
์ด๋ถํ์์ ์ด์ฉํ์ฌ ํ์ด.
*/
int main() {
ios_base::sync_with_stdio(false);
cin.tie(0);
int n; cin >> n;
vector<int>dp;
dp.push_back(0);
for (int i = 0; i < n; i++) {
int number; cin >> number;
if (dp.back() < number) dp.push_back(number); //๋ฒกํฐ ๋ง์ง๋ง ๊ฐ๋ณด๋ค ์
๋ ฅ๋ฐ์ ๊ฐ์ด ๋ ํฌ๋ฉด ์ฝ์
ํ๋ค.
else { //๋ฒกํฐ ์ด์ ์ ๊ฐ๋ณด๋ค ์
๋ ฅ๋ฐ์ ๊ฐ์ด ๋ ์์ผ๋ฉด
auto it = lower_bound(dp.begin(), dp.end(), number);//์ด๋ถ ํ์์ ํตํด ์
๋ ฅ๋ฐ์ ๊ฐ(number) ๋ณด๋ค ๊ฐ๊ฑฐ๋ ํฐ ๊ฐ์ ์ธ๋ฑ์ค๋ฅผ ๋ฐ๊ณ
*it = number; //๊ทธ ์ธ๋ฑ์ค์ ์
๋ ฅ๋ฐ์ ๊ฐ์ผ๋ก ๊ฐฑ์ ํด์ค๋ค.
}
}
cout << dp.size() - 1;
}
'Algorithm ๐ง๐ปโ๐ป > ๋ฐฑ์ค(BOJ)' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[๋ฐฑ์ค,c++] 1259๋ฒ - ํฐ๋ฆฐ๋๋กฌ์ (0) | 2021.11.02 |
---|---|
[๋ฐฑ์ค,c++] 1253๋ฒ - ์ข๋ค (0) | 2021.11.02 |
[๋ฐฑ์ค,c++] 1238๋ฒ - ํํฐ (0) | 2021.11.02 |
[๋ฐฑ์ค,c++] 1197๋ฒ - ์ต์ ์คํจ๋ ํธ๋ฆฌ (0) | 2021.11.02 |
[๋ฐฑ์ค,c++] 11931๋ฒ - ์ ์ ๋ ฌํ๊ธฐ4 (0) | 2021.11.02 |
[๋ฐฑ์ค,c++] 11866๋ฒ - ์์ธํธ์ค ๋ฌธ์ 0 (0) | 2021.11.02 |
๋๊ธ