Submission #955115

# Submission time Handle Problem Language Result Execution time Memory
955115 2024-03-29T12:12:18 Z Ludissey Global Warming (CEOI18_glo) C++14
0 / 100
46 ms 7004 KB
#include <bits/stdc++.h>
#define int long long
#define sz(a) (int)a.size()
using namespace std;

signed main() {
    ios_base::sync_with_stdio(false); cin.tie(nullptr);
	int n,x; cin >> n >> x;
    vector<int> t(n);

    for (int i = 0; i < n; i++) cin >> t[i];
    vector<int> pref(n,0);
    vector<int> suff(n,0);
    vector<int> lis;
    lis.push_back(t[0]);
    pref[0]=1;
    for (int i = 1; i < n; i++)
    {
        if(t[i]+x>lis.back()) pref[i]=sz(lis)+1;
        else{
            int p=(lower_bound(lis.begin(), lis.end(), t[i]+x))-lis.begin();
            pref[i]=p;
        }
        if(t[i]>lis.back()) {
            lis.push_back(t[i]);
        }else{
            int p=(lower_bound(lis.begin(), lis.end(), t[i]))-lis.begin(); 
            lis[p]=t[i];
        }

    }
    lis.clear();
    lis.push_back(-t[n-1]);
    pref[0]=1;
    for (int i = n-2; i >= 0; i--)
    {

        if(t[i]>lis.back()) {
            lis.push_back(t[i]);
            suff[i]=sz(lis);
        }else{
            int p=(lower_bound(lis.begin(), lis.end(), t[i]))-lis.begin(); 
            lis[p]=t[i];
            suff[i]=p;

        }

    }
    int mx=max(pref[n-1],suff[0]);
    for (int i = 1; i < n; i++) mx=max(mx,pref[i-1]+suff[i]-1);
    cout << mx << "\n";
    return 0;
}
# Verdict Execution time Memory Grader output
1 Incorrect 1 ms 348 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 1 ms 348 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 1 ms 348 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 46 ms 7004 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 11 ms 2140 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 18 ms 3676 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 1 ms 348 KB Output isn't correct
2 Halted 0 ms 0 KB -