数据应该加强一下,我这错误代码都AC了
查看原帖
数据应该加强一下,我这错误代码都AC了
455674
jielosc楼主2024/1/22 23:37

AC代码如下:

#include <bits/stdc++.h>
using namespace std;
const int N = 5e3 + 5;
int f[N], a[N];
int main()
{
    int n;
    cin >> n;
    for (int i = 1; i <= n; ++i)
        cin >> a[i];
    f[1] = a[1];
    int len = 1;
    for (int i = 2; i <= n; ++i)
    {
        if (a[i] > f[len])
            f[++len] = a[i];
        else
        {
            *upper_bound(f + 1, f + 1 + len, a[i]) = a[i];
        }
    }
    cout << len << endl;
    return 0;
}

输入:

5
3 4 6 4 5

输出:

4

正确答案:

3
2024/1/22 23:37
加载中...