Thread Denkfehler in while? (29 answers)
Opened by Ichhalt at 2016-11-21 08:18

Raubtier
 2016-11-22 10:16
#185626 #185626
User since
2012-05-04
1070 articles
BenutzerIn
[default_avatar]
Du hast auch noch gesagt, dass sich die Paarungen aus der Tabelle ergeben. Wie denn? Sowas wie Schweizer System?

Und können Spieler auch z.B. mittendrin in einer Runde aussetzen?

Wenn du einfach von oben nach unten vorgehst, kann es eben passieren, dass am Ende 2 Spieler übrigbleiben, die schon gegeneinander gespielt haben.

Ich habe noch nicht genau darüber nachgedacht, aber man könnte z.B. so vorgehen, dass man erst einmal alle möglichen Paarungen erzeugt (wären bei 30 Spielern dann 900) und daraus die schon gespielten rauslöscht. Mit den verbleibenden muss man dann zusehen, dass man die nächste Runde rausbekommt. Ob das der effizienteste Weg ist, weiß ich nicht, würde es aber vielleicht so versuchen. Du hast ja irgendeine Ordnung, welche Partien unbedingt stattfinden sollen. Du fängst also mit der wichtigsten an und entfernst dann alle Partien beider Spieler auf der Liste der möglichen Partien und gehst zur nächstwichtigsten Paarung usw. Wenn etwas nicht geht, musst du dann eben backtracken.

Beim Schweizer System geht es so, dass der beste gegen den nächstbesten, gegen den er noch keine Partie gespielt hat, spielt. Danach wird genauso für den zweitbesten verfahren etc. Genaueres siehe Link.

Anders würde man vorgehen, wenn man schon am Anfang weiß, dass jeder gegen jeden spielt.
Last edited: 2016-11-22 10:19:42 +0100 (CET)

View full thread Denkfehler in while?