Олимпиадный тренинг

Задача . B. Крафтинг


Как и следовало ожидать, Флорида является домом для многих причудливых магических сил, и мужчина из Флориды стремится укротить их.

Существует \(n\) различных типов магических материалов, пронумерованных от \(1\) до \(n\). Изначально у вас есть \(a_i\) единиц материала \(i\) для каждого \(i\) от \(1\) до \(n\). Вы можете выполнять следующую операцию:

  • Выберите материал \(i\) (где \(1\le i\le n\)). Потратьте по \(1\) единице каждого из остальных материалов (то есть всех \(j\), таких, что \(j\neq i\)), чтобы получить \(1\) единицу материала \(i\). Более формально, после выбора материала \(i\) обновите массив \(a\) следующим образом: \(a_i := a_i + 1\) и \(a_j := a_j - 1\) для всех \(j\), где \(j\neq i\) и \(1\le j\le n\). Обратите внимание, что все \(a_j\) должны оставаться неотрицательными, т.е. вы не можете тратить ресурсы, которых у вас нет.

Вы пытаетесь создать артефакт, используя эти материалы. Чтобы успешно создать артефакт, у вас должно быть по крайней мере \(b_i\) единиц материала \(i\) для каждого \(i\) от \(1\) до \(n\). Определите, возможно ли создать артефакт, выполнив операцию любое количество раз (возможно, ноль).

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

Каждый тест состоит из нескольких наборов входных данных. В первой строке находится одно целое число \(t\) (\(1 \le t \le 10^4\)) — количество наборов входных данных. Далее следует описание наборов входных данных.

Первая строка каждого набора входных данных содержит единственное целое число \(n\) (\(2\le n\le 2\cdot 10^5\)) — количество типов материалов.

Вторая строка каждого набора входных данных содержит \(n\) целых чисел \(a_1, a_2, \ldots, a_n\) (\(0 \le a_i\le 10^9\)) — количество каждого материала \(i\), которое у вас есть в данный момент.

Третья строка каждого набора входных данных содержит \(n\) целых чисел \(b_1, b_2, \ldots, b_n\) (\(0 \le b_i\le 10^9\)) — количество каждого материала \(i\), необходимого для создания артефакта.

Гарантируется, что сумма значений \(n\) по всем наборам входных данных не превосходит \(2 \cdot 10^5\).

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

Для каждого набора входных данных выведите одну строку, содержащую либо «YES», либо «NO» — может ли артефакт быть создан.

Вы можете выводить каждую букву в любом регистре (строчную или заглавную). Например, строки «yEs», «yes», «Yes» и «YES» будут приняты как положительный ответ.

Примечание

В первом наборе входных данных выполните операцию над материалом \(1\). После этого у нас будет ровно столько ресурсов, сколько требуется: \(1\) единица материала \(1\) и по \(4\) единицы каждого из материалов \(2\) и \(3\).

Во втором наборе входных данных можно показать, что независимо от того, как выполняются операции, создать артефакт невозможно.

В третьем наборе входных данных мы можем выполнить операцию с материалом \(1\) дважды. После этих операций у нас будет \(3\) единицы материала \(1\) и \(8\) единиц материала \(2\), чего более чем достаточно для создания артефакта.


Примеры
Входные данныеВыходные данные
1 3
4
0 5 5 1
1 4 4 0
3
1 1 3
2 2 1
2
1 10
3 3
YES
NO
YES

time 1000 ms
memory 256 Mb
Правила оформления программ и список ошибок при автоматической проверке задач

Статистика успешных решений по компиляторам
 Кол-во
С++ Mingw-w643
Комментарий учителя