Logisch: Ohne 'C' geht nix. Aber sonst?
Und ohne A und oder B auch nicht! Und was das "logisch" angeht, es gibt mehr QnD-Lösungen, die auf "das passiert doch nieee" basieren, als es Sand am Nordseestrand gibt.
Äh... Also wenn ich eine Heuristik erstelle, die davon ausgeht, das -ausgehend von einer Datei 'C'- die beiden unmittelbaren Vorgängerdateien suche, dann ist 'C' nun einmal Voraussetzung dafür. Allerdings kann 'A' bzw. 'B' optional sein, denn ich kann maximal bis zum vorherigen 'C' gehen. Ergo? Geht es mit ohne A und B.
Pseudocode:
Delphi-Quellcode:
p := Data.Length;
while i>0 do begin
i := FindPrevious_C (P);
j := FindPrevious_C (i-1);
CollectFiles (Data[j+1]....Data[i]);
p := i-1;
end;