/ SeriousOJ /

Record Detail

Runtime Error


  
# Status Time Cost Memory Cost
#1 Accepted 1ms 540.0 KiB
#2 Accepted 1ms 540.0 KiB
#3 Accepted 1ms 332.0 KiB
#4 Accepted 1ms 560.0 KiB
#5 Accepted 1ms 540.0 KiB
#6 Runtime Error foo: foo.cc:37: int main(): Assertion `v[i] < n' failed. 1ms 796.0 KiB
#7 Accepted 1ms 540.0 KiB
#8 Accepted 1ms 540.0 KiB
#9 Accepted 1ms 540.0 KiB
#10 Accepted 1ms 540.0 KiB
#11 Accepted 1ms 540.0 KiB
#12 Accepted 1ms 540.0 KiB
#13 Accepted 1ms 768.0 KiB
#14 Accepted 1ms 540.0 KiB
#15 Accepted 1ms 540.0 KiB
#16 Accepted 1ms 516.0 KiB
#17 Accepted 1ms 540.0 KiB
#18 Accepted 1ms 540.0 KiB
#19 Accepted 1ms 540.0 KiB
#20 Accepted 1ms 324.0 KiB
#21 Accepted 1ms 540.0 KiB
#22 Accepted 1ms 516.0 KiB
#23 Accepted 1ms 588.0 KiB
#24 Accepted 1ms 540.0 KiB
#25 Accepted 1ms 540.0 KiB
#26 Accepted 1ms 540.0 KiB
#27 Accepted 1ms 540.0 KiB
#28 Accepted 1ms 540.0 KiB
#29 Accepted 1ms 540.0 KiB
#30 Accepted 2ms 332.0 KiB
#31 Accepted 2ms 540.0 KiB
#32 Accepted 2ms 328.0 KiB
#33 Accepted 2ms 540.0 KiB
#34 Accepted 2ms 332.0 KiB
#35 Accepted 1ms 540.0 KiB
#36 Accepted 1ms 332.0 KiB
#37 Accepted 1ms 540.0 KiB
#38 Accepted 1ms 540.0 KiB
#39 Accepted 1ms 540.0 KiB
#40 Accepted 1ms 540.0 KiB
#41 Accepted 2ms 796.0 KiB
#42 Accepted 2ms 540.0 KiB
#43 Accepted 2ms 540.0 KiB
#44 Accepted 2ms 540.0 KiB
#45 Accepted 2ms 540.0 KiB
#46 Accepted 2ms 540.0 KiB
#47 Accepted 2ms 540.0 KiB
#48 Accepted 2ms 540.0 KiB
#49 Accepted 2ms 540.0 KiB
#50 Accepted 2ms 404.0 KiB
#51 Accepted 2ms 588.0 KiB
#52 Accepted 2ms 540.0 KiB
#53 Accepted 2ms 772.0 KiB
#54 Accepted 2ms 540.0 KiB
#55 Accepted 2ms 540.0 KiB
#56 Accepted 2ms 540.0 KiB
#57 Accepted 2ms 540.0 KiB
#58 Accepted 2ms 816.0 KiB
#59 Accepted 2ms 816.0 KiB
#60 Accepted 2ms 540.0 KiB
#61 Accepted 6ms 796.0 KiB
#62 Accepted 5ms 1.02 MiB
#63 Accepted 5ms 796.0 KiB
#64 Accepted 5ms 788.0 KiB
#65 Accepted 5ms 848.0 KiB
#66 Accepted 5ms 796.0 KiB
#67 Accepted 5ms 852.0 KiB
#68 Accepted 5ms 852.0 KiB
#69 Accepted 5ms 796.0 KiB
#70 Accepted 5ms 796.0 KiB
#71 Accepted 11ms 1.27 MiB
#72 Accepted 8ms 1.066 MiB
#73 Accepted 9ms 876.0 KiB
#74 Accepted 9ms 1.02 MiB
#75 Accepted 9ms 1.074 MiB
#76 Accepted 9ms 1.02 MiB
#77 Accepted 8ms 1012.0 KiB
#78 Accepted 9ms 1.023 MiB
#79 Accepted 8ms 1.02 MiB
#80 Accepted 8ms 1.008 MiB
#81 Accepted 13ms 1.078 MiB
#82 Accepted 10ms 1.027 MiB
#83 Accepted 12ms 1.078 MiB
#84 Accepted 11ms 1.02 MiB
#85 Accepted 11ms 1.07 MiB
#86 Accepted 11ms 1.02 MiB
#87 Accepted 9ms 1.273 MiB
#88 Accepted 11ms 1.27 MiB
#89 Accepted 10ms 1.27 MiB
#90 Accepted 10ms 1.023 MiB
#91 Accepted 138ms 6.164 MiB
#92 Accepted 120ms 6.133 MiB
#93 Accepted 131ms 6.02 MiB
#94 Accepted 128ms 6.16 MiB
#95 Accepted 127ms 6.164 MiB
#96 Accepted 135ms 6.172 MiB
#97 Accepted 87ms 6.156 MiB
#98 Accepted 134ms 6.102 MiB
#99 Accepted 115ms 6.152 MiB
#100 Accepted 121ms 6.258 MiB

Code

#include <bits/stdc++.h>
#include <ext/pb_ds/assoc_container.hpp>
using namespace __gnu_pbds;
using namespace std;

template <typename T> using ordered_set = tree<T, null_type, less_equal <T>, rb_tree_tag, tree_order_statistics_node_update>;

vector<int> countGreaterRight(vector<int>& arr) {
    int n = arr.size();
    vector<int> res(n);
    ordered_set <int>os;
    for (int i = n - 1; i >= 0; i--) {
        res[i] = os.size() - os.order_of_key(arr[i] + 1); // strictly greater
        os.insert(arr[i]);
    }
    return res;
}

vector<int> countSmallerLeft(vector<int>& arr) {
    int n = arr.size();
    vector<int> res(n);
    ordered_set <int>os;
    for (int i = 0; i < n; i++) {
        res[i] = os.order_of_key(arr[i] + 1); // strictly smaller
        os.insert(arr[i]);
    }
    return res;
}

int main() {
    int n;
    cin >> n;
    vector<int>v(n);
    for(int i = 0; i < n; i++)
    {
        cin >> v[i];
        assert(v[i] < n);
    }

    vector<int> greaterRight = countGreaterRight(v);
    vector<int> smallerLeft = countSmallerLeft(v);

    int specialCount = 0;
    for (int i = 0; i < n; i++) {
        if (greaterRight[i] >= v[i] || smallerLeft[i] >= v[i])
        {
            specialCount++;
        }
    }

    cout << specialCount << endl;

    return 0;
}

Information

Submit By
Type
Submission
Problem
P1184 The Curious Kid and the Number Game
Language
C++17 (G++ 13.2.0)
Submit At
2025-03-22 18:32:41
Judged At
2025-03-22 18:32:41
Judged By
Score
99
Total Time
138ms
Peak Memory
6.258 MiB