Submission #322363

# Submission time Handle Problem Language Result Execution time Memory
322363 2020-11-14T14:03:10 Z Karen124 Global Warming (CEOI18_glo) C++14
25 / 100
102 ms 3820 KB
#include <bits/stdc++.h>
     
using namespace std;
     
#define ll long long int 
#define F first
#define S second
#define pb push_back
 
const ll N = 2e5 + 10;
const ll LOG = 50;
const ll MOD = 1e9 + 7;
const ll INF = 1e9 + 10;
int n, X, a[N], b[N], dp[2][N], ans;
int LIS(int l, int r, int add){
    int len = 0, p = 0;
    for (int i = 0; i <= n + 5; i++){
        b[i] = 0;
    }
    for (int i = 1; i <= n; i++){
        p = lower_bound(b, b + len, a[i] + (l <= i && i <= r) * add) - b;
        b[p] = a[i] + (l <= i && i <= r) * add;
        len = max(len, p + 1);
    }
    if (l == 0 && r == 0){
        cout << len << '\n';
        exit(0);
    }
    return len;
}
int main() {
    cin >> n >> X;
    for (int i = 1; i <= n; i++){
        cin >> a[i];
    }
    if (X == 0) {LIS(0, 0, 0);}
    else if (n <= 50 && X <= 50){
        for (int l = 1; l <= n; l++){
            for (int r = l; r <= n; r ++){
                for (int i = -X; i <= X; i++){
                    ans = max(ans, LIS(l, r, i));
                }
            }
        }
        cout << ans << '\n';
    }
    else {return 0;}
    return 0;
}
# Verdict Execution time Memory Grader output
1 Correct 1 ms 364 KB Output is correct
2 Correct 1 ms 364 KB Output is correct
3 Correct 1 ms 364 KB Output is correct
4 Correct 1 ms 364 KB Output is correct
5 Correct 1 ms 364 KB Output is correct
6 Correct 1 ms 364 KB Output is correct
7 Correct 1 ms 364 KB Output is correct
8 Correct 1 ms 364 KB Output is correct
9 Correct 1 ms 364 KB Output is correct
10 Correct 1 ms 364 KB Output is correct
11 Correct 1 ms 364 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 364 KB Output is correct
2 Correct 1 ms 364 KB Output is correct
3 Correct 1 ms 364 KB Output is correct
4 Correct 1 ms 364 KB Output is correct
5 Correct 1 ms 364 KB Output is correct
6 Correct 1 ms 364 KB Output is correct
7 Correct 1 ms 364 KB Output is correct
8 Correct 1 ms 364 KB Output is correct
9 Correct 1 ms 364 KB Output is correct
10 Correct 1 ms 364 KB Output is correct
11 Correct 1 ms 364 KB Output is correct
12 Correct 19 ms 364 KB Output is correct
13 Correct 1 ms 364 KB Output is correct
14 Correct 60 ms 396 KB Output is correct
15 Correct 25 ms 364 KB Output is correct
16 Correct 22 ms 364 KB Output is correct
17 Correct 1 ms 364 KB Output is correct
18 Correct 1 ms 364 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 364 KB Output is correct
2 Correct 1 ms 364 KB Output is correct
3 Correct 1 ms 364 KB Output is correct
4 Correct 1 ms 364 KB Output is correct
5 Correct 1 ms 364 KB Output is correct
6 Correct 1 ms 364 KB Output is correct
7 Correct 1 ms 364 KB Output is correct
8 Correct 1 ms 364 KB Output is correct
9 Correct 1 ms 364 KB Output is correct
10 Correct 1 ms 364 KB Output is correct
11 Correct 1 ms 364 KB Output is correct
12 Correct 19 ms 364 KB Output is correct
13 Correct 1 ms 364 KB Output is correct
14 Correct 60 ms 396 KB Output is correct
15 Correct 25 ms 364 KB Output is correct
16 Correct 22 ms 364 KB Output is correct
17 Correct 1 ms 364 KB Output is correct
18 Correct 1 ms 364 KB Output is correct
19 Incorrect 1 ms 392 KB Output isn't correct
20 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 96 ms 3820 KB Output is correct
2 Correct 97 ms 3820 KB Output is correct
3 Correct 98 ms 3820 KB Output is correct
4 Correct 102 ms 3820 KB Output is correct
5 Correct 64 ms 3052 KB Output is correct
# Verdict Execution time Memory Grader output
1 Incorrect 21 ms 1004 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 42 ms 1644 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 1 ms 364 KB Output is correct
2 Correct 1 ms 364 KB Output is correct
3 Correct 1 ms 364 KB Output is correct
4 Correct 1 ms 364 KB Output is correct
5 Correct 1 ms 364 KB Output is correct
6 Correct 1 ms 364 KB Output is correct
7 Correct 1 ms 364 KB Output is correct
8 Correct 1 ms 364 KB Output is correct
9 Correct 1 ms 364 KB Output is correct
10 Correct 1 ms 364 KB Output is correct
11 Correct 1 ms 364 KB Output is correct
12 Correct 19 ms 364 KB Output is correct
13 Correct 1 ms 364 KB Output is correct
14 Correct 60 ms 396 KB Output is correct
15 Correct 25 ms 364 KB Output is correct
16 Correct 22 ms 364 KB Output is correct
17 Correct 1 ms 364 KB Output is correct
18 Correct 1 ms 364 KB Output is correct
19 Incorrect 1 ms 392 KB Output isn't correct
20 Halted 0 ms 0 KB -