fork download
  1. #include <iostream>
  2. using namespace std;
  3.  
  4. int main()
  5. {
  6. int n, m, nonMoved;
  7. cin >> n >> m;
  8. nonMoved = n;
  9. int accessRecord[n + 1] = {0};
  10. int temp;
  11. for (int i = 1; i <= m; i++) {
  12. cin >> temp;
  13. if (accessRecord[temp] == 0)
  14. nonMoved--;
  15. accessRecord[temp] = i;
  16. }
  17.  
  18. int arrange[nonMoved + m + 1] = {0};
  19. for (int i = n, j = 1; i > 0; i--) {
  20. if (accessRecord[i] == 0)
  21. arrange[j++] = i;
  22. else
  23. arrange[nonMoved + accessRecord[i] + 1] = i;
  24. }
  25.  
  26. for (int i = nonMoved + m + 1; i > 0; i--)
  27. if (arrange[i] != 0)
  28. cout << arrange[i] << endl;
  29.  
  30. return 0;
  31. }
  32.  
Success #stdin #stdout 0s 15232KB
stdin
5 3
4
2
5
stdout
5
2
4
1
3