Не в состоянии понять одну запись Top Coder по жадным алгоритмам - PullRequest
0 голосов
/ 13 июля 2011

Я на самом деле практикую Жадные алгоритмы, и есть проблема с topcoder .. Так что нужна помощь ....

Проблема в робастной компьютерной системе .. http://www.topcoder.com/stat?c=problem_statement&pm=2235&rd=5070

Я не понимаю, что такое MFC.(Максимальное количество ошибок)?

Если кто-то может пролить свет на объяснение MFC на простом примере, то это поможет !!

Спасибо ..

Если у вас нет учетной записи и вы не можете перейти по ссылке, вот вопрос:

В надежном компьютереСистема, одна из самых важных частей охлаждения.Без надлежащего охлаждения процессоры могут нагреваться до температуры свыше 400 градусов C. Надежность системы можно измерить, определив, сколько вентиляторов может выйти из строя, не рискуя системным процессором.Каждому вентилятору может быть присвоено значение, указывающее, сколько мощности он должен охладить систему, и мы можем определить минимальную мощность охлаждения, которая должна превышать сумму мощностей вентилятора, чтобы правильно охладить систему.Мы определяем Failure Set как набор вентиляторов, которые не нужны для охлаждения системы.Другими словами, если вентиляторы в наборе неисправностей выходят из строя, система все еще может должным образом охлаждаться оставшимися вентиляторами.Счетчиком набора отказов является количество вентиляторов в наборе.

Для измерения надежности мы определим два значения: Максимальный набор отказов (MFS) и Максимальный счетчик отказов (MFC).MFS - это набор поклонников с наибольшим количеством возможных ошибок.Набор вентиляторов может иметь более одной MFS (см. Ниже).Набор отказов является MFS тогда и только тогда, когда нет наборов отказов с большим количеством.MFC является наибольшим значением, так что все наборы вентиляторов с количеством <= MFC являются наборами ошибок.Другими словами, любой набор вентиляторов с размером MFC или меньше может выйти из строя, и система все равно будет должным образом охлаждаться оставшимися вентиляторами. </p>

Рассмотрим комплект вентиляторов с объемами 1, 2, 3 и охлаждением.требование 2. Существуют две MFS с числом 2: вентиляторы 1 и 3 или вентиляторы 1 и 2. Однако MFC - это не 2, поскольку вентиляторы 2 и 3 не установлены как отказ (вентилятор 1 не может должным образом охладить системусамо собой).Таким образом, MFC равен 1, потому что в случае отказа одного из вентиляторов система все равно может быть охлаждена.

Вам будет предоставлено значение int [], которое указывает, сколько единиц охлаждения обеспечивает каждый вентилятор, иint minCooling, который обозначает минимальные единицы охлаждения, необходимые для охлаждения системы.Ваш метод должен возвращать int [], где первое значение должно быть числом вентиляторов в максимальном наборе отказов (MFS), а второе значение должно быть максимальным количеством отказов (MFC).

Ответы [ 2 ]

1 голос
/ 13 июля 2011

Мы определяем Failure Set как набор вентиляторов, которые не нужны для охлаждения системы. Другими словами, если вентиляторы в наборе неисправностей выходят из строя, система все еще может должным образом охлаждаться оставшимися вентиляторами. Количество Failure Set - это количество вентиляторов в наборе.

Набор отказов является MFS тогда и только тогда, когда нет наборов отказов с большим количеством.

Это все в постановке проблемы. Что не понятно?

0 голосов
/ 13 июля 2011

Так же, как и в постановке задачи:

The MFC is the largest value such that all fan sets with count <= MFC are Failure Sets. In other words, any set of fans of size MFC or less can fail, and the system will still be properly cooled by the remaining fans.

MFC означает, что если мы произвольно выберем n <= вентиляторы MFC для отказа, то система все равно сможет предоставитьнеобходимое требование к охлаждению. </strong> Однако существует по крайней мере один случай, когда в случае отказа вентиляторов MFC + 1 система не обеспечит необходимое требование охлаждения.

Удачи в TopCoder & Happy Learning!

Спойлер:

Просто найдите минимальное количество вентиляторов M, сумма их мощностей которых больше, чем (общая мощность - требования к охлаждению).Эти вентиляторы должны быть самыми большими, отсюда и жадный алгоритм.М - 1 ответ.

...