Розберемо умову. Пара підходить, якщо її складність не менша за складність будь-якої пари (i', j'), у якої i' \ne i і j' \ne j. Максимум по таких парах дорівнює
бо ваги й потужності додатні й вибираються незалежно.
Позначимо — максимум масиву , W_2 — другий максимум, c_W — скільки разів трапляється ; аналогічно , P_2, c_P для масиву . Тоді \max_{i' \ne i} w_{i'} дорівнює W_2, якщо w_i = W і c_W = 1, і в усіх інших випадках.
Тепер ключове спостереження: якщо w_i < W і p_j < P, то права частина дорівнює W \cdot P, що строго більше за w_i p_j, — пара не підходить. Отже, у будь-якій підхожій парі w_i = W або p_j = P. Це дозволяє не перебирати всі n^2 пар.
Випадок 1: w_i = W і p_j = P. Тоді ліва частина — глобальний максимум добутку, тому нерівність виконується завжди. Таких пар рівно c_W \cdot c_P.
Випадок 2: w_i = W, p_j < P. Тоді \max_{j' \ne j} p_{j'} = P. Якщо c_W \ge 2, умова перетворюється на W p_j \ge W P, тобто p_j \ge P — суперечність, підхожих пар немає. Якщо ж c_W = 1, умова стає W \cdot p_j \ge W_2 \cdot P; лишається порахувати, скільки p_j < P їй задовольняють.
Випадок 3 симетричний до другого.
Кожен випадок обробляється одним проходом, тому загальна складність — . Добутки сягають 10^{18}, тому рахуйте у 64-бітному типі.