C++
#include <algorithm> #include <array> #include <iostream> using namespace std; class seq{ private: array<int, 7000> q; int idx=-1; public: void insertSeq(int x) { q[++idx] = x; } void deleteSeq() { if (idx > -1) idx--; } int selectidxSeq(int i) { if (i>-1 && i<=idx) return q[i]; return -1; } void insertidxSeq(int i, int x) { for (int k=idx+1; k>i+1; k--) q[k] = q[k-1]; q[i+1] = x; idx++; } void sortSeq() { sort(q.begin(), q.begin() + idx + 1); } void descSeq() { sort(q.begin(), q.begin() + idx + 1, greater<>()); } int lenSeq() { return idx+1; } void printSeq() { for (int k=0; k<=idx; k++) cout << q[k] << ' '; cout << endl; } }; int main() { int n; cin >> n; int op, i, x; seq q; while (n--) { cin >> op; switch (op) { case 1: cin >> x; q.insertSeq(x); break; case 2: q.deleteSeq(); break; case 3: cin >> i; cout << q.selectidxSeq(i) << endl; break; case 4: cin >> i >> x; q.insertidxSeq(i, x); break; case 5: q.sortSeq(); break; case 6: q.descSeq(); break; case 7: cout << q.lenSeq() << endl; break; case 8: q.printSeq(); break; } } } // 64 位输出请用 printf("%lld")