#include using namespace std; int countGreater(vector &arr, int n, int k) { int l = 0, r = n - 1; int leftGreater = n; while (l <= r) { int m = l + (r - l) / 2; if (arr[m] > k) { leftGreater = m; r = m - 1; } else l = m + 1; } return (n - leftGreater); } int main() { int n, num; scanf("%d", &n); vector listNum, res; for (int i = 0; i < n; i++) { scanf("%d", &num); listNum.push_back(num); } vector tmp = listNum; sort(tmp.begin(), tmp.end()); for (int i = 1; i <= listNum[0]; i++) res.push_back(countGreater(tmp, n, i - 1)); for (int i = 0; i < listNum[0]; i++) { cout << res[i]; if (i != listNum[0] - 1) cout << " "; } return 0; }