Submission #846952

# Submission time Handle Problem Language Result Execution time Memory
846952 2023-09-08T18:22:45 Z SUNWOOOOOOOO Financial Report (JOI21_financial) C++17
14 / 100
348 ms 779600 KB
#include <bits/stdc++.h>
using namespace std;
const int mxN = 7005;
int n, d, A[mxN], dp1[mxN][mxN], dp2[mxN][mxN]; // len, last idx
vector <int> va;

int main()
{
    memset(dp1, -1, sizeof dp1);
    memset(dp2, -1, sizeof dp2);
    scanf("%d %d", &n, &d);
    for (int i = 1; i <= n; i++) {
        scanf("%d", &A[i]);
        va.push_back(A[i]);
    }
    sort(va.begin(), va.end());
    va.erase(unique(va.begin(), va.end()), va.end());
    for (int i = 1; i <= n; i++) A[i] = lower_bound(va.begin(), va.end(), A[i]) - va.begin() + 1;

    int ans = 0;
    for (int i = 1; i <= n; i++){
        dp1[i][A[i]] = 1, dp2[i][A[i]] = i;
        if (dp1[i - 1][A[i]] != -1 && i - dp2[i - 1][A[i]] <= d) dp1[i][A[i]] = dp1[i - 1][A[i]];
        for (int j = 1; j < A[i]; j++){
            if (dp1[i - 1][j] == -1 || i - dp2[i - 1][j] > d) continue;
            dp1[i][j] = dp1[i - 1][j], dp2[i][j] = dp2[i - 1][j];
            dp1[i][A[i]] = max(dp1[i][A[i]], dp1[i - 1][j] + 1);
        }
        for (int j = A[i] + 1; j <= n; j++){
            if (dp1[i - 1][j] == -1) continue;
            dp1[i][j] = dp1[i - 1][j];
            dp2[i][j] = i;
        }
        for (int j = 1; j <= n; j++) ans = max(ans, dp1[i][j]);
    }

    printf("%d\n", ans);

    return 0;
}

Compilation message

Main.cpp: In function 'int main()':
Main.cpp:11:10: warning: ignoring return value of 'int scanf(const char*, ...)' declared with attribute 'warn_unused_result' [-Wunused-result]
   11 |     scanf("%d %d", &n, &d);
      |     ~~~~~^~~~~~~~~~~~~~~~~
Main.cpp:13:14: warning: ignoring return value of 'int scanf(const char*, ...)' declared with attribute 'warn_unused_result' [-Wunused-result]
   13 |         scanf("%d", &A[i]);
      |         ~~~~~^~~~~~~~~~~~~
# Verdict Execution time Memory Grader output
1 Correct 60 ms 384420 KB Output is correct
2 Correct 46 ms 384336 KB Output is correct
3 Correct 41 ms 384488 KB Output is correct
4 Correct 43 ms 384544 KB Output is correct
5 Correct 42 ms 384336 KB Output is correct
6 Correct 44 ms 384336 KB Output is correct
7 Correct 42 ms 384336 KB Output is correct
8 Correct 42 ms 384336 KB Output is correct
9 Correct 42 ms 384336 KB Output is correct
10 Correct 42 ms 384336 KB Output is correct
11 Correct 42 ms 384336 KB Output is correct
12 Correct 43 ms 384336 KB Output is correct
13 Correct 42 ms 384336 KB Output is correct
14 Correct 42 ms 384336 KB Output is correct
15 Correct 42 ms 384456 KB Output is correct
16 Correct 43 ms 384336 KB Output is correct
17 Correct 44 ms 384432 KB Output is correct
18 Correct 42 ms 384336 KB Output is correct
19 Correct 42 ms 384336 KB Output is correct
20 Correct 43 ms 384336 KB Output is correct
21 Correct 42 ms 384336 KB Output is correct
22 Correct 42 ms 384336 KB Output is correct
23 Correct 43 ms 384336 KB Output is correct
24 Correct 42 ms 384340 KB Output is correct
25 Correct 43 ms 384336 KB Output is correct
26 Correct 43 ms 384412 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 60 ms 384420 KB Output is correct
2 Correct 46 ms 384336 KB Output is correct
3 Correct 41 ms 384488 KB Output is correct
4 Correct 43 ms 384544 KB Output is correct
5 Correct 42 ms 384336 KB Output is correct
6 Correct 44 ms 384336 KB Output is correct
7 Correct 42 ms 384336 KB Output is correct
8 Correct 42 ms 384336 KB Output is correct
9 Correct 42 ms 384336 KB Output is correct
10 Correct 42 ms 384336 KB Output is correct
11 Correct 42 ms 384336 KB Output is correct
12 Correct 43 ms 384336 KB Output is correct
13 Correct 42 ms 384336 KB Output is correct
14 Correct 42 ms 384336 KB Output is correct
15 Correct 42 ms 384456 KB Output is correct
16 Correct 43 ms 384336 KB Output is correct
17 Correct 44 ms 384432 KB Output is correct
18 Correct 42 ms 384336 KB Output is correct
19 Correct 42 ms 384336 KB Output is correct
20 Correct 43 ms 384336 KB Output is correct
21 Correct 42 ms 384336 KB Output is correct
22 Correct 42 ms 384336 KB Output is correct
23 Correct 43 ms 384336 KB Output is correct
24 Correct 42 ms 384340 KB Output is correct
25 Correct 43 ms 384336 KB Output is correct
26 Correct 43 ms 384412 KB Output is correct
27 Incorrect 42 ms 384308 KB Output isn't correct
28 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 60 ms 384420 KB Output is correct
2 Correct 46 ms 384336 KB Output is correct
3 Correct 41 ms 384488 KB Output is correct
4 Correct 43 ms 384544 KB Output is correct
5 Correct 42 ms 384336 KB Output is correct
6 Correct 44 ms 384336 KB Output is correct
7 Correct 42 ms 384336 KB Output is correct
8 Correct 42 ms 384336 KB Output is correct
9 Correct 42 ms 384336 KB Output is correct
10 Correct 42 ms 384336 KB Output is correct
11 Correct 42 ms 384336 KB Output is correct
12 Correct 43 ms 384336 KB Output is correct
13 Correct 42 ms 384336 KB Output is correct
14 Correct 42 ms 384336 KB Output is correct
15 Correct 42 ms 384456 KB Output is correct
16 Correct 43 ms 384336 KB Output is correct
17 Correct 44 ms 384432 KB Output is correct
18 Correct 42 ms 384336 KB Output is correct
19 Correct 42 ms 384336 KB Output is correct
20 Correct 43 ms 384336 KB Output is correct
21 Correct 42 ms 384336 KB Output is correct
22 Correct 42 ms 384336 KB Output is correct
23 Correct 43 ms 384336 KB Output is correct
24 Correct 42 ms 384340 KB Output is correct
25 Correct 43 ms 384336 KB Output is correct
26 Correct 43 ms 384412 KB Output is correct
27 Incorrect 42 ms 384308 KB Output isn't correct
28 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Runtime error 348 ms 779600 KB Execution killed with signal 11
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Runtime error 338 ms 779600 KB Execution killed with signal 11
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 60 ms 384420 KB Output is correct
2 Correct 46 ms 384336 KB Output is correct
3 Correct 41 ms 384488 KB Output is correct
4 Correct 43 ms 384544 KB Output is correct
5 Correct 42 ms 384336 KB Output is correct
6 Correct 44 ms 384336 KB Output is correct
7 Correct 42 ms 384336 KB Output is correct
8 Correct 42 ms 384336 KB Output is correct
9 Correct 42 ms 384336 KB Output is correct
10 Correct 42 ms 384336 KB Output is correct
11 Correct 42 ms 384336 KB Output is correct
12 Correct 43 ms 384336 KB Output is correct
13 Correct 42 ms 384336 KB Output is correct
14 Correct 42 ms 384336 KB Output is correct
15 Correct 42 ms 384456 KB Output is correct
16 Correct 43 ms 384336 KB Output is correct
17 Correct 44 ms 384432 KB Output is correct
18 Correct 42 ms 384336 KB Output is correct
19 Correct 42 ms 384336 KB Output is correct
20 Correct 43 ms 384336 KB Output is correct
21 Correct 42 ms 384336 KB Output is correct
22 Correct 42 ms 384336 KB Output is correct
23 Correct 43 ms 384336 KB Output is correct
24 Correct 42 ms 384340 KB Output is correct
25 Correct 43 ms 384336 KB Output is correct
26 Correct 43 ms 384412 KB Output is correct
27 Incorrect 42 ms 384308 KB Output isn't correct
28 Halted 0 ms 0 KB -