Top.Mail.Ru
Ответы

Скажите алгоритм действия или код на любом языке пожалуйста

Артём предложил девочке Оле сыграть в следующую игру. Есть список из n массивов, i -й массив содержит mi≥2 целых положительных чисел ai,1,ai,2,…,ai,mi . Оля может переместить из каждого массива не более одного (возможно, 0 ) числа в другой массив. Обратите внимание, перемещать числа из одного массива можно не более одного раза, однако добавлять числа в один массив можно несколько раз, а также, все перемещения выполняются одновременно. Назовем красотой списка массивов величину ∑ni=1minmij=1ai,j . Иными словами, для каждого массива мы находим значение минимального элемента в нём, после чего суммируем получившиеся значения. Суть игры — сделать красоту списка массивов максимально возможной. Помогите Оле победить в этой нелегкой игре!
Входные данные
Каждый тест состоит из нескольких наборов входных данных. Первая строка входных данных содержит одно целое число t (1≤t≤25000 ) — количество наборов входных данных. Далее следует описание наборов входных данных. Первая строка каждого набора данных содержит одно целое число n (1≤n≤25000 ) — количество массивов в списке. Далее следуют описания массивов. Каждое описание массива состоит из двух строк. Первая строка содержит одно целое число mi (2≤mi≤50000 ) — количество чисел в i -м массиве. В следующей строке даны mi целых чисел ai,1,ai,2,…,ai,mi (1≤ai,j≤109 ) — элементы i -го массива. Гарантируется, что сумма mi по всем наборам входных данных не превосходит 50000 .
Выходные данные
Для каждого набора входных данных выведите одно целое число — максимальную красоту списка массивов, которую Оля может получить.
Пример
входные данные
3
2
2
1 2
2
4 3
1
3
100 1 6
3
4
1001 7 1007 5
3
8 11 6
2
2 9
выходные данные
5
1
19
Примечание В первом наборе входных данных можно переместить число 3 из второго массива в первый. Тогда красота равна min(1,2,3)+min(4)=5 . Можно показать, что это максимально возможная красота. Во втором наборе входных данных есть всего один массив, поэтому независимо от перемещений красота равна min(100,1,6)=1 .

Дополнен
Только авторизированные пользователи могут оставлять свои ответы
Дата
Популярность
Аватар пользователя
Оракул
1234567891011
 t = int(input()) 
for _ in range(t): 
    n = int(input()) 
    min_values = [] 
    for i in range(n): 
        m = int(input()) 
        a = list(map(int, input().split())) 
        min_values.append(min(a)) 
    min_values.sort() 
    print(sum(min_values[:-1]) + max(min_values))