#include <iostream> #include <list> #include <algorithm> using namespace std; int main() { int n, m; cin >> n >> m; // 使用list来存储队列元素,方便快速插入和删除 list<int> arr; for (int i = 1; i <= n; ++i) { arr.push_back(i); } // 读取指令 for (int i = 0; i < m; ++i) { int x; cin >> x; // 在list中查找要移动到最前面的元素 auto it = find(arr.begin(), arr.end(), x); if (it!= arr.end()) { // 将元素移动到最前面 arr.splice(arr.begin(), arr, it); } } // 输出最终的队列 for (auto num : arr) { cout << num << " "; } cout << endl; return 0; } /************************************************************** Problem: 1527 User: linyifan Language: C++ Result: Time Limit Exceed ****************************************************************/