Олімпіда з програмування була організована на двох серверах. На першому сервері відбувся офіційний турнір, в якому взяли участь n учасників і рейтингова таблиця змагань задається масивом rank. На другому сервері грали m учасників поза конкурсом (вони не пройшли відбіркові тури)і відома кількість балів кожного з учасників - масив user.
Складіть програму, яка для кожного учасника, який виконував завдання поза конкурсом, визначить його місце у випадку, якби він мав можливість здавати завдання на першому сервері.
Формат вхідних даних
Перший рядок містить ціле число \(n\) \((1 \le n \le 2 \cdot 10^5)\) - кількість учасників у рейтинговій таблиці першого сервера.
Наступний рядок містить n цілих чисел \(rank_i\) \((1 \le rank_i \le 10^9, 0 \le i < n)\).
Далі в окремому рядку міститься ціле число \(m\) \((1 \le n \le 2 \cdot 10^5)\) - кількість учасників, які грали на другому сервері.
Наступний рядок містить \(m\) цілих чисел \(user_i\) \((0 \le user_i \le 10^9, 0 \le i < m)\).
Числа в ряках розділяються пропуском.
Формат вихідних даних
Для кожного з учасників другого сервера визначіть його місце, яке б він міг теоретично зайняти у випадку виступу в офіційних змаганнях. Місця виводити в окремих рядках. Якщо декілька учасників мають однакову кількість балів, то вони займають однакове місце.
Приклад вхідних даних
4
100 90 90 80
3
70 80 105
Приклад вихідних даних
4
3
1
Пояснення
Перший учасник неофіційного турніру має 70 балів і він міг би зайняти 4-е місце. Другий учасник зайняв би 3-є місце, а третій - міг би мати 1 місце у випадку офіційної участі.
Comments
Таблиця user в 9 тесті містить 0 балів, а за умовою мінімальний - 1 бал
змінено обмеження в умові
Перевірю. Хоча навряд, що цей факт впливає на алгоритми розвʼязку