Submit | All submissions | Best solutions | Back to list |
ZTEM - Тепловое излучение |
В ходе длительной работы группа ученых разработала новейший трехмерный процессор. Из-за огромных частот, на которых он работает, кристалл выделяет большое количество тепла. Даже с применением новейшей системы охлаждения, часть узлов процессора выделяет слишком много энергии. С помощью специальных методов анализа для каждого блока удалось установить количества тепла (при наличии источника охлаждения) которое он выделяет в минуту. Теперь разработчикам процессора нужна ваша помощь. По данной трехмерной матрице необходимо найти подматрицу, сумма тепловыделения каждого элемента которой максимальна. Эти данные будут использованы учеными для реконструкции блоков входящих в эту "горячую" подматрицу с целью понижения их теплоотдачи.
Входные данные
t – число тестов [t <= 99], затем следуют t тестов
Каждая тестовая последовательность начинается с 3ёх целых чисел: x, y, z - размеров матрицы. [5 <= x, y, z <= 50]. Затем следует описание x прямоугольных подматриц размером y на z. Всего x*y*z целых чисел, каждое из этих чисел не превосходит по модулю 10000.
Выходные данные
Для каждого теста необходимо вывести 6 чисел: x1, y1, z1, x2, y2, z2 каждая тройка задает один из двух противоположных углов подматрицы выделяющей максимальное количество тепловой энергии в минуту. [1 <= x1 <= x2 <= x] [1 <= y1 <= y2 <= y] [1 <= z1 <= z2 <= z]
Начисление очков
Количество очков, полученное за тестовую последовательность score = (x*y*z*T)/MAX, где T = суммарная тепловая энергия, выделяемая найденной вами подматрицей, а MAX - некоторый коэффициент, определенный для данной матрицы (примерно равный точному решению). Если сумма элементов найденной вами подматрицы равна отрицательному числу, то за данный тест вы получите ноль очков. Общее число полученных за решение равно сумме всех очков заработанных за каждый из тестов в отдельности.
Пример
Входные данные: 1 5 5 5 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 -1 -1 -10 -1 -1 -1 -1 -10 -1 -1 -1 -1 -10 -1 -1 -1 -1 -10 -1 -1 -1 -1 -10 -1 -1 20 2 2 2 20 20 2 2 2 20 20 2 2 2 20 20 2 2 2 20 20 2 2 2 20 5 5 5 5 5 5 5 5 5 5 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 -10 10 -10 10 -10 -10 10 -10 10 -10 -10 10 -10 10 -10 -10 10 -10 10 -10 -10 10 -10 10 -10 Выходные данные: 2 1 1 4 5 5 Начисление очков: score = 5*5*5*(-70+230+65)/295 = 95.338983
Added by: | Roman Sol |
Date: | 2005-04-11 |
Time limit: | 15s |
Source limit: | 50000B |
Memory limit: | 1536MB |
Cluster: | Cube (Intel G860) |
Languages: | All except: ASM32-GCC ASM64 MAWK BC C-CLANG NCSHARP CPP14 CPP14-CLANG COBOL COFFEE D-CLANG D-DMD DART ELIXIR FANTOM FORTH GOSU GRV JS-MONKEY JULIA KTLN NIM NODEJS OBJC OBJC-CLANG OCT PERL6 PICO PROLOG PYPY PYPY3 R RACKET RUST CHICKEN SED SQLITE SWIFT UNLAMBDA VB.NET |
Resource: | ru_acm |