Учитывая непустую матрицу неотрицательных целых чисел, ответьте, какие уникальные строки вносят наибольший вклад в общую сумму элементов в матрице.
Ответьте любым разумным указанием, например, маской уникального порядка появления строк (или порядка сортировки) или их индексов (на основе нуля или единицы), или подматрицы, состоящей из строк (в любом порядке) или некоторого вид словарной конструкции ... - но объясни это!
Примеры
[[1,2,3],[2,0,4],[6,3,0],[2,0,4],[6,3,0],[2,0,4]]
:
Уникальные строки [1,2,3]
, [2,0,4]
и [6,3,0]
каждый соответственно способствуя 6, 6, 9 и каждый раз , когда они происходят. Тем не менее, они встречаются один, три и два раза соответственно, поэтому все их соответствующие вхождения вносят 6, 18 и 18 в общую сумму (42), поэтому последние два ряда вносят больше всего. Действительные ответы поэтому:
[false,true,true]
маска по внешнему виду / порядку сортировки или
[1,2]
/ [2,3]
ноль / единичные индексы вышеупомянутых или
[[2,0,4],[6,3,0]]
фактических строк
⋮
[[1,2],[3,1],[2,3],[1,2],[3,1],[2,3],[1,2]]
[false,false,true]
(порядок появления) / [false,true,false]
(порядок сортировки)
[2]
/ [3]
(порядок появления) / [1]
/ [2]
(порядок сортировки)
[[2,3]]
⋮
Pyth , 9 байт
-1 спасибо FryAmTheEggman!
Попробуйте онлайн!
источник
k
не нужен. Также.M*sZ/QZ{
кажется, что решение такой же длины тогда.R , 64 байта
Попробуйте онлайн!
Возвращает логический вектор с TRUE / FALSE в порядке сортировки (лексикографический).
Уникальные строки отображаются в виде имен векторов, поэтому легко определить наиболее способствующие.
источник
Python 3 ,
153145129 байт-8 байт благодаря @Mr. Xcoder!
Попробуйте онлайн!
источник
Haskell, 60 байт
Возвращает список строк.
источник
Древесный уголь , 25 байт
Попробуйте онлайн! Ссылка на подробную версию кода. Формат вывода по умолчанию - каждый элемент строки в отдельной строке и строки с двойным интервалом. Объяснение:
источник
Mathematica, 48 байтов
или
где (например)
источник
SortBy[Gather@m,Total@*Flatten][[-1,1]]
TakeLargestBy[Gather[m], Total[#, 2] &, 1][[1, 1]] /@ m
JavaScript (ES6), 88 байт
Выводит массив логических значений в порядке появления.
Попробуйте онлайн!
источник
Groovy , 76 байт
Попробуйте онлайн!
Возвращается как логическое значение в порядке сортировки
источник
Скала , 63 байта
Попробуйте онлайн!
Возвращает логическое значение в порядке появления
источник
APL (Dyalog Unicode) , 12 байт
Попробуйте онлайн!
-2 благодаря Адаму . -1 благодаря альтернативному формату вывода.
источник
Wolfram Language (Mathematica) , 42 байта
Попробуйте онлайн!
источник
Python 2 ,
8178 байтПопробуйте онлайн!
3 байта спасибо Черной Сове Кай .
Для данной коллекции кортежей выводом является набор тех кортежей, которые имеют желаемое максимальное свойство.
источник
Джапт ,
1311 байт-2 байта от @Shaggy
Попробуйте онлайн!
источник
C # (интерактивный компилятор Visual C #) , 126 байт
Попробуйте онлайн!
Большая часть этого кода тратится на удаление всех повторяющихся значений, поскольку компаратор по умолчанию для списков не сравнивает значения внутри списков. Это означает , что я не могу использовать
Distinct()
,GroupBy()
илиContains
для фильтрации списка.источник
К (нгн / к) , 17 байт
Попробуйте онлайн!
{
}
функция с аргументомx
=x
group - формирует словарь, в котором ключи - это строки, а значения - списки их индексов в матрице.x@
индексировать исходную матрицу с этим. В результате получается словарь со строками в качестве ключей. значения являются несколькими копиями соответствующего ключа+//'
сумма до сходимости каждого (действует только на значения; ключи остаются без изменений)a:
назначить вa
|/
максимум (из значений)a=|/a
словарь строк-булев, из которых строки вносят наибольший вклад&
"где", т.е. какие ключи соответствуют значениям 1источник
Japt,
1110 байтЗапустите его онлайн
источник
05AB1E ,
109 байтовПопробуйте онлайн или проверьте все контрольные примеры .
Объяснение:
источник
Gaia , 10 байт
Попробуйте онлайн!
Поскольку Gaia не очень легко принимает списки через входные данные, это функция, которая принимает список сверху сверху стека и оставляет результат сверху (как маски отсортированного порядка).
источник
J , 16 байт
Попробуйте онлайн!
Монадический глагол, который дает логический результат в порядке появления.
Как это устроено
источник