Зустріч на вечірці
Сакурако має друзів. Кожного з них можна описати за їхнім внеском на веб-сторінці з олімпідного програмування CodeCoders. Друг описується числом — його внеском.
Зараз, серед цих друзів, друг знайомий з другом тоді й тільки тоді, коли . Сакурако хоче зібрати якомога більше людей на вечірку. Однак він хоче, щоб усі вони були незнайомі один з одним.
Формально, якщо він вирішив запросити набір людей , тоді для кожного , де , повинна виконуватись умова .
Серед усіх можливих наборів людей, він хоче дізнатися розмір найбільшого з них.
На жаль, Сакурако не знає значення , тому йому потрібно обчислити відповідь для кожного .
Вхідні дані
Перший рядок містить одне ціле число () — кількість друзів Сакурако.
Другий рядок містить цілих чисел () — внесок кожного друга.
Вихідні дані
Виведіть чисел. -те число позначає найбільший розмір набору для .
Приклади
Примітка
У першому тесті:
Коли , ;
Для , можна довести, що найбільший можливий це ;
Для , та , можна довести, що один з найбільших можливих це ;
Для , можна довести, що один з найбільших можливих це .
Оцінювання
( балів): для всіх ;
( балів): ;
( бал): ;
( балів): ;
( балів): без додаткових обмежень.