[Huawei OD-Testfragen] 100 % Erfolgsquote am Fließband (Java) [2023 (B-Band) 100 Punkte]

Fließband

Themenbeschreibung

Eine Fabrik verfügt über m Pipelines
, um n unabhängige Jobs parallel auszuführen
. Die Fabrik hat ein Planungssystem eingerichtet.
Bei der Planung von Jobs erhält immer der Job mit der kürzesten Verarbeitungszeit Vorrang.
Angesichts der Anzahl der Pipelines m ist
dies die Anzahl der zu erledigenden Jobs abgeschlossen werden muss, beträgt
jeweils n. Die Bearbeitungszeit des Auftrags beträgt t1, t2...tn.
Bitte programmieren und berechnen Sie, wie viel Zeit für die Bearbeitung aller Aufträge benötigt wird.
Wenn n > m, werden die m Aufträge mit kurzer Bearbeitungszeit eingegeben Die Pipeline
wird zuerst bearbeitet, und die anderen warten
. Wenn ein Auftrag abgeschlossen ist,
wird derjenige mit der kürzesten Verarbeitungszeit aus den verbleibenden Aufträgen ausgewählt
und zur Verarbeitung eingegeben

Beschreibung eingeben

Die erste Zeile enthält zwei Ganzzahlen (durch Leerzeichen getrennt), die
die Anzahl der Pipelines m und die Anzahl der Jobs n darstellen.
In der zweiten Zeile werden n Ganzzahlen (durch Leerzeichen getrennt) eingegeben,
die die Verarbeitungszeit jedes Jobs t1, t2 ... tn
0 darstellen < m, n < 100
0 < t1,t2...tn < 100

Ausgabebeschreibung

Geben Sie die Gesamtzeit für die Bearbeitung aller Jobs aus

Beispiel eins

eingeben

3 5
8 4 3 2 10

Ausgabe

 

おすすめ

転載: blog.csdn.net/weixin_45541762/article/details/132571688