Thema: Delphi Algorithmus Challenge

Einzelnen Beitrag anzeigen

Meisterschmied

Registriert seit: 3. Nov 2003
45 Beiträge
 
#4

Re: Algorithmus Challenge

  Alt 1. Apr 2004, 20:41
Hi negaH,

also, ich hab zwei Nächte drüber geschlafen und bin, glaub ich, zu einem ganz interessanten Ergebnis gekommen.

a) Ich glaube dein Problem ist nicht exakt lösbar, zumindest nicht in vernünftiger Zeit. Dein Problem erinnert stark an Varianten des Travellers Problem. Von daher werden wir uns mit Näherungslösungen zufrieden geben müssen.

Ich würde das Problem wie folgt lösen:

Die 00 ist reserviert für 1, da wir auf jedem Fall alle Zahlen als Summe der Längenbits darstellen müssen. Für die Berechnung von 01 gehen wir wie folgt vor: wir gucken, bei welcher Kombination von (00 + 01) die größte Summe herauskommt. Wenn wir unsere Liste betrachten, wäre das folgendes: Wir fangen von oben an:

Würden wir für 01 := 2 setzen, bekämen wir eine Summe von den Posten 2 und 3 (00+01) zu 129. Setzen wir 01 := 3, bekommen wir als Summe der Posten 3 und 4 (00+01) 211. Und so weiter, der höchste Posten gewinnt. Es wäre in diesem Fall allerdings noch zu differenzieren, dass es im Allgemeinen am Besten wäre, wenn 01 > (00+01) gälte, daher dass z. B. 4 > 5 gilt. Als nächstes machen wir für 10 etwas ähnliches: Wir gucken, wann die Summe aus (10+00 und 10+01) mit 10+00 <> 01 am größten ist. Für 11 muss vor allem gelten, dass alle Zahlen in einem vernünftigen Zugriff liegen, aber da gibt es viele Möglichkeiten, dass zu gestalten, da wird dir schon was einfallen.

Hoffe, es hat dir weitergeholfen. Bitte poste mir mal (gern auch im PN), wie du das ganze nun wirklich umgesetzt hast. Würde mich sehr interessieren .

Ciao,

Wieland
  Mit Zitat antworten Zitat