graphlogo

Wydział Matematyki i Informatyki

Uniwersytetu Mikołaja Kopernika w Toruniu

2inf 2023/24 Algorytmy i struktury danych - LE, LF

[mc*] Optymalne nawiasowanie (*)
Data zakończenia: 2023-12-31 23:59
Języki: pas c cpp
Limit czasu: 5.0 s
Limit pamięci: 10 MB
Limit rozmiaru rozwiązania: 30 kB
Zadanie dodatkowe!


Problem
Wyznaczenie optymalnego nawiasowanie ciągu macierzy oraz kosztu tego nawiasowania (liczbę mnożeń skalarnych potrzebnych do wymnożenia ciągu macierzy wg optymalnego nawiasowania). Użyj programowania dynamicznego.

Wejście
W pierwszej linii liczba naturalna 0 < n <= 100 = liczba macierzy.
W kolejnych n+1 liniach rozmiary p[0], p[1],...p[n]
(tj. i-ta macierz ma rozmiar p[i-1]xp[i]).

Wyjście
W pierwszej linii koszt optymalnego nawiasowania.
W drugiej linii napis przedstawiający optymalne nawiasowanie. i-tą macierz wypisujemy jako Ai, mnożenie zapisujemy bez kropki (tj. iloczyn macierzy Ai oraz Aj jako AiAj). Nawiasy okrągłe.



Przykładowe wejście I

3
10
100
5
50


Wynik I
7500
(A1A2)A3



Przykładowe wejście II
12
10
20
3
14
5
8
19
22
3
10
11
100
5


Wynik II
8010
(A1A2)(((A3A4)(A5(A6(A7A8))))(((A9A10)A11)A12))


Powrót
© 2009-2020 • ZawodyWeb Team
IKS - Inwestycja w Kierunki Strategiczne na Wydziale Matematyki i Informatyki UMK

Projekt współfinansowany ze środków Unii Europejskiej w ramach Europejskiego Funduszu Społecznego