답안 #787087

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
787087 2023-07-18T19:30:52 Z MinaRagy06 코끼리 (Dancing Elephants) (IOI11_elephants) C++17
50 / 100
9000 ms 2388 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] + l, cnt = 0;
    for (int i = 1; i < n; i++) {
        cnt += (a[i][0] > prv);
        if (a[i][0] > prv) prv = a[i][0] + l;

    }
    return cnt + 1;
}
# 결과 실행 시간 메모리 Grader output
1 Correct 0 ms 340 KB Output is correct
2 Correct 0 ms 212 KB Output is correct
3 Correct 1 ms 340 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 0 ms 340 KB Output is correct
2 Correct 0 ms 212 KB Output is correct
3 Correct 1 ms 340 KB Output is correct
4 Correct 0 ms 340 KB Output is correct
5 Correct 0 ms 340 KB Output is correct
6 Correct 0 ms 340 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 0 ms 340 KB Output is correct
2 Correct 0 ms 212 KB Output is correct
3 Correct 1 ms 340 KB Output is correct
4 Correct 0 ms 340 KB Output is correct
5 Correct 0 ms 340 KB Output is correct
6 Correct 0 ms 340 KB Output is correct
7 Correct 877 ms 1356 KB Output is correct
8 Correct 1232 ms 1380 KB Output is correct
9 Correct 3508 ms 2028 KB Output is correct
10 Correct 8457 ms 2028 KB Output is correct
11 Correct 8492 ms 2008 KB Output is correct
12 Correct 5486 ms 2016 KB Output is correct
13 Correct 8499 ms 2024 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 0 ms 340 KB Output is correct
2 Correct 0 ms 212 KB Output is correct
3 Correct 1 ms 340 KB Output is correct
4 Correct 0 ms 340 KB Output is correct
5 Correct 0 ms 340 KB Output is correct
6 Correct 0 ms 340 KB Output is correct
7 Correct 877 ms 1356 KB Output is correct
8 Correct 1232 ms 1380 KB Output is correct
9 Correct 3508 ms 2028 KB Output is correct
10 Correct 8457 ms 2028 KB Output is correct
11 Correct 8492 ms 2008 KB Output is correct
12 Correct 5486 ms 2016 KB Output is correct
13 Correct 8499 ms 2024 KB Output is correct
14 Correct 2512 ms 1616 KB Output is correct
15 Correct 2272 ms 1620 KB Output is correct
16 Correct 7437 ms 2240 KB Output is correct
17 Execution timed out 9061 ms 2388 KB Time limit exceeded
18 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 0 ms 340 KB Output is correct
2 Correct 0 ms 212 KB Output is correct
3 Correct 1 ms 340 KB Output is correct
4 Correct 0 ms 340 KB Output is correct
5 Correct 0 ms 340 KB Output is correct
6 Correct 0 ms 340 KB Output is correct
7 Correct 877 ms 1356 KB Output is correct
8 Correct 1232 ms 1380 KB Output is correct
9 Correct 3508 ms 2028 KB Output is correct
10 Correct 8457 ms 2028 KB Output is correct
11 Correct 8492 ms 2008 KB Output is correct
12 Correct 5486 ms 2016 KB Output is correct
13 Correct 8499 ms 2024 KB Output is correct
14 Correct 2512 ms 1616 KB Output is correct
15 Correct 2272 ms 1620 KB Output is correct
16 Correct 7437 ms 2240 KB Output is correct
17 Execution timed out 9061 ms 2388 KB Time limit exceeded
18 Halted 0 ms 0 KB -