Module: Muster in der dynamischen Programmierung - 2


Problem

5 /5


Problem

Viele der n verschiedenen natürlichen Chips. Die Rückstellung der Elemente dieser Multiplikation wird als k-Widerstand bezeichnet, wenn bei einem der beiden benachbarten Elemente dieser Transformation der größte gemeinsame Nenner mindestens k ist. Wenn beispielsweise viele S = {6, 3, 9, 8} Elemente vorhanden sind, ist der Anschlag {8, 6, 3, 9} das 2-fache des Anschlags und der Anschlag {6, 8, 3, 9} nicht.

Alle Filter zurücksetzen1, p2..., pnEs wird ein Lexikograph weniger zurückgesetzt werden {q1Q2nIst eine solche natürliche Zahl i (1 ≤ i n), für die pJ = qJ bei j Kanal i und pI /I

Als Beispiel dafür, wie man alle k-Stationen der oben genannten Vielzahl von Lexikogrammen rationalisiert. Es gibt beispielsweise genau vier 2-Stops von mehreren S: {3, 9, 6, 8}, {8, 6, 3, 9}, {8, 6, 9, 3} und {9, 3, 6, 8}. Dementsprechend ist die erste Zwei-Stop-Station in Lexikogramm zahlreich {3, 9, 6, 8} und die vierte ist zahlreich {9, 3, 6, 8}.

Es ist notwendig, ein Programm zu schreiben, um eine m-k-Stop in dieser Reihenfolge zu finden.

Eingangsdaten
Die Eingabedatei in der ersten Zeile enthält drei natürliche Zahlen - n (1 ≤ n 16), m und k (1 ≤ m, k ≤ 10ANHANG) Die zweite Zeile enthält n verschiedene natürliche Zahlen bis 10ANHANG♪ Alle Zahlen in den Zeilen sind durch einen Spalt geteilt.

Ausgangsdaten
Die Ausstiegsdatei muss den m-k-Stop eines bestimmten Multiplikators oder -1 entfernen, wenn nicht.
Beispiele
NeinEingangsdatenAusgangsdaten
1Artikel 1
6 8 3 9
3 9 6 8
24 4 2
6 8 3 9
9 3 6 8
34 5 2
6 8 3 9
-1