teil dir die strecke in zonen ein, z.b.


hier haben wir 5 streckenabschnitte.
gelistet nach der priorität:
  1. grün
  2. orange
  3. hellblau
  4. gelb
  5. rot

bei gelb und orange fragst du die X-Koordinaten ab, bei den anderen die Y-koordinaten.
jeder fahrer hat eine variable, die sich merkt, in welcher runde er fährt.

dann musst du die fahrer untereinander vergleichen.

zunächst nach der rundenzahl des fahrers. jemand in runde 2 ist weiter als jemand in runde 1.
danach nach zone. ein fahrer in der grünen zone ist weiter als einer in der orangenen.
danach nach der X- bzw. Y-koordinate. zwei fahrer sind in der gleichen runde und in der gleichen zone, z.b. in der gelben. derjenige, dessen X-koordinate höher ist, liegt vorn (das gilt für die gelbe zone, in der orangenen ist es eben umgekehrt, da man von rechts nach links fährt. dann ist der, dessen X wert kleiner ist vorn).

ach ja, wenn jemand die ziellinie überfährt (aus der grünen zone in die rote), steigt seine rundenzahl um 1. wenn er rückwärts durch die linie fährt, wird ihm eine runde abgezogen (sonst könnte man herrlich bescheissen). wenn er sich dabei erst in der ersten runde (also die rundenanzahl-variable gleich 0 ist), wird diese auf 0 gesetzt und nicht um eins reduziert.

hoffe du verstehst.