Submission #787083

# Submission time Handle Problem Language Result Execution time Memory
787083 2023-07-18T19:27:15 Z MinaRagy06 Dancing Elephants (IOI11_elephants) C++17
50 / 100
9000 ms 4416 KB
#include <bits/stdc++.h>
#pragma GCC optimize("Ofast")
using namespace std;
typedef int64_t ll;

int n, l;
int a[150'005][2];
void init(int N, int L, int X[]) {
    n = N, l = L;
    pair<int, int> v[n];
    for (int i = 0; i < n; i++) {
        v[i] = {X[i], i};
    }
    sort(v, v + n);
    for (int i = 0; i < n; i++) {
        a[i][0] = v[i].first;
        a[i][1] = v[i].second;
    }
}
int update(int x, int y) {
    int pos = -1;
    for (int i = 0; i < n; i++) {
        if (a[i][1] == x) {
            pos = i;
            break;
        }
    }
    if (a[pos][0] < y) {
        a[pos][0] = y;
        for (int i = pos; i + 1 < n && a[i][0] > a[i + 1][0]; i++) {
            swap(a[i][0], a[i + 1][0]);
            swap(a[i][1], a[i + 1][1]);
        }
    } else {
        a[pos][0] = y;
        for (int i = pos; i - 1 >= 0 && a[i][0] < a[i - 1][0]; i--) {
            swap(a[i][0], a[i - 1][0]);
            swap(a[i][1], a[i - 1][1]);
        }
    }
    int prv = a[0][0], cnt = 0;
    for (int i = 1; i < n; i++) {
        cnt += (a[i][0] - prv > l); 
        if (a[i][0] - prv > l) prv = a[i][0];

    }
    return cnt + 1;
}
# Verdict Execution time Memory Grader output
1 Correct 1 ms 340 KB Output is correct
2 Correct 1 ms 340 KB Output is correct
3 Correct 1 ms 340 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 340 KB Output is correct
2 Correct 1 ms 340 KB Output is correct
3 Correct 1 ms 340 KB Output is correct
4 Correct 1 ms 308 KB Output is correct
5 Correct 1 ms 340 KB Output is correct
6 Correct 1 ms 340 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 340 KB Output is correct
2 Correct 1 ms 340 KB Output is correct
3 Correct 1 ms 340 KB Output is correct
4 Correct 1 ms 308 KB Output is correct
5 Correct 1 ms 340 KB Output is correct
6 Correct 1 ms 340 KB Output is correct
7 Correct 942 ms 1784 KB Output is correct
8 Correct 1350 ms 1884 KB Output is correct
9 Correct 3785 ms 2516 KB Output is correct
10 Correct 8743 ms 2580 KB Output is correct
11 Correct 8746 ms 2512 KB Output is correct
12 Correct 5811 ms 2516 KB Output is correct
13 Correct 8723 ms 2512 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 340 KB Output is correct
2 Correct 1 ms 340 KB Output is correct
3 Correct 1 ms 340 KB Output is correct
4 Correct 1 ms 308 KB Output is correct
5 Correct 1 ms 340 KB Output is correct
6 Correct 1 ms 340 KB Output is correct
7 Correct 942 ms 1784 KB Output is correct
8 Correct 1350 ms 1884 KB Output is correct
9 Correct 3785 ms 2516 KB Output is correct
10 Correct 8743 ms 2580 KB Output is correct
11 Correct 8746 ms 2512 KB Output is correct
12 Correct 5811 ms 2516 KB Output is correct
13 Correct 8723 ms 2512 KB Output is correct
14 Correct 2623 ms 2108 KB Output is correct
15 Correct 2460 ms 2224 KB Output is correct
16 Correct 7836 ms 2744 KB Output is correct
17 Execution timed out 9039 ms 4416 KB Time limit exceeded
18 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 1 ms 340 KB Output is correct
2 Correct 1 ms 340 KB Output is correct
3 Correct 1 ms 340 KB Output is correct
4 Correct 1 ms 308 KB Output is correct
5 Correct 1 ms 340 KB Output is correct
6 Correct 1 ms 340 KB Output is correct
7 Correct 942 ms 1784 KB Output is correct
8 Correct 1350 ms 1884 KB Output is correct
9 Correct 3785 ms 2516 KB Output is correct
10 Correct 8743 ms 2580 KB Output is correct
11 Correct 8746 ms 2512 KB Output is correct
12 Correct 5811 ms 2516 KB Output is correct
13 Correct 8723 ms 2512 KB Output is correct
14 Correct 2623 ms 2108 KB Output is correct
15 Correct 2460 ms 2224 KB Output is correct
16 Correct 7836 ms 2744 KB Output is correct
17 Execution timed out 9039 ms 4416 KB Time limit exceeded
18 Halted 0 ms 0 KB -