eolymp
bolt
Попробуйте наш новый интерфейс для отправки задач
Задачи

Социальная справедливость

Социальная справедливость

Местные выборы завершены. В вашем городе новый мэр, и Вы его самый доверенный советник! Во время кампании Вы сделали его популярным пообещав принести в город социальную справедливость. Вы пришли к константе k > 1 и заявили, что социальная справедливость будет достигнута, когда никто не будет зарабатывать больше суммы, в k раз превышающую среднюю заработную плату жителей города.

Теперь пришло время выполнить это обещание. У мэра на самом деле нет никакого разумного плана, как обеспечить социальную справедливость, не разрушая экономику, но, к счастью, он придумал гораздо более простую идею. Достаточно выбрать группу граждан, чья зарплата подходит под определение... и выслать всех остальных. Действительно безупречный план! Те, кто останется в городе, будут жить в чистом, социально справедливом обществе. Те, кого изгоняют... ну, они все равно не получат шанса проголосовать на следующих выборах. Просто и эффективно - что может пойти не так?

Конечно, ничего не может пойти не так, но для Вас все может пойти еще лучше! Мэр полон решимости изгнать как можно меньше людей для достижения цели, но если имеется более одного возможного способа сделать это, то Вы наверняка сможете повлиять на выбор. Понятно, что не помешает предварительно поговорить с горожанами и узнать, есть ли у кого-то из них что-нибудь интересное для заказа в обмен на Вашу защиту при принятии решения.

Однако вот в чем загвоздка: если нет никакой возможности разрешить данному человеку остаться, обсуждать с ним этот вопрос было бы ненужным и бессмысленным риском, поскольку Вы не могли бы предложить ему свою защиту, несмотря ни на что. Более прагматичным выбором будет составить список всех таких граждан и поговорить со всеми остальными.

Входные данные

Первая строка содержит количество тестов z (1z1000). Далее следуют описания тестов.

Первая строка каждого теста содержит одно целое число n (1n200 000) - количество жителей. Граждане пронумерованы от 1 до n.

В следующей строке записано n целых чисел ai (0ai109) - заработная плата граждан.

Последняя строка содержит два целых числа p и q (1q < p1000), которые определяют константу K := р / q.

Общее количество граждан во всех тестах не превышает 106.

Выходные данные

Для каждого теста выведите строку, содержащую целое число c (0c < n) - количество людей, которые точно не смогут оставаться в городе. Затем выведите одну строку, содержащую c целых чисел: идентификаторы этих граждан в порядке возрастания.

Лимит времени 1 секунда
Лимит использования памяти 128 MiB
Входные данные #1
3
4
1 2 3 4
3 2
5
1 15 2 5 1
2 1
5
1 2 3 1000 10000
4 3
Выходные данные #1
0

1
2 
2
4 5 
Источник 2021 40th Петрозаводск, Зима День 1: Jagiellonian U Contest, Гран При Кракова, Январь 29, Задача M