Einführung: Verwenden Sie Silverlight 2.0 (c#), um ein Lianliankan-Spiel zu entwickeln: Wählen Sie die Karte mit der linken Maustaste aus. Wenn die Verbindung zwischen den beiden ausgewählten Karten nicht mehr als 3 gerade Linien beträgt, können die beiden ausgewählten Karten entfernt werden .
Ideen
1. Algorithmus für die anfängliche Kartenanordnung: Es ist bekannt, dass die Behälterkapazität x ist, die Anzahl der eindeutigen Karten y ist, x >= y && x % 2 == 0, die Karten zuerst zufällig im Behälter anordnen und dann herausnehmen die gleichen Karten im Behälter. Bei einem Satz mit einer ungeraden Anzahl (die Anzahl der Mitglieder im Satz muss eine gerade Zahl sein) schneiden Sie schließlich den Satz quer durch und kopieren Sie die Karten von der rechten Hälfte des Satzes in die linke Hälfte des Satzes der Reihe nach. Der obige Algorithmus stellt sicher, dass es aufgrund einer bestimmten Zufallsrate keine ungerade Anzahl identischer Karten gibt.
2. Kein Lösungsalgorithmus und Neuanordnungsalgorithmus: Berechnen Sie, ob es unter den im Container vorhandenen Karten einen eliminierbaren Pfad in Paaren gibt. Wenn nicht, gibt es keine Lösung und muss neu angeordnet werden. Beim Neuanordnen müssen Sie den vorhandenen Kartensatz und den Kartenpositionssatz abrufen, zufällig Karten aus dem Kartensatz auswählen (wenn Sie eine herausnehmen, wird diese aus dem ursprünglichen Satz entfernt) und sie dann in den Kartenpositionssatz legen um den Zweck des Ersetzens der vorhandenen Karten zu erreichen
3. Zweipunkt-Eliminierungspfadalgorithmus und Algorithmus zur Auswahl des optimalen Eliminierungspfads: Nehmen Sie alle Koordinatensätze ohne Platzhalter (einschließlich sich selbst) in der x-Achsen-Richtung und y-Achsen-Richtung des ersten vom Spieler ausgewählten Punkts sowie die Namen sind jeweils x1s, y1s; nehmen Sie alle Koordinatensätze ohne Platzhalter (einschließlich sich selbst) in der x-Achsen-Richtung und der y-Achsen-Richtung des zweiten vom Spieler ausgewählten Punkts, und die Namen sind x2s bzw. y2s. Finden Sie zunächst zwei Punkte mit gleichen x-Koordinaten in x1s und ermitteln Sie die Menge der eliminierbaren Pfade in und y2s. Die Kombination der beiden Sätze ist die Menge aller löschbaren Pfade zwischen den beiden vom Spieler ausgewählten Punkten. Wenn der Satz leer ist, können die beiden Punkte nicht eliminiert werden. Der kürzeste Pfad im Satz ist der optimale Eliminierungspfad -Punkt-Verbindungslinie im Satz ist Wegverbinder eliminieren
4. Das Spiel wird nach dem MVVM-Muster (Model – View – ViewModel) entwickelt
Expandieren