Knight Hop
Παρακάτω είναι μια σκακιέρα της οποίας τα τετράγωνα θα τα προσδιορίζουμε χρησιμοποιώντας διατεταγμένα ζεύγη, όπως υποδεικνύεται. Για παράδειγμα, παρατηρήστε ότι το πιόνι βρίσκεται στη θέση και το πιόνι στη θέση .
8 | ||||||||
7 | ||||||||
6 | ||||||||
5 | ||||||||
4 | ||||||||
3 | B | |||||||
2 | A | |||||||
1 | ||||||||
1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 |
Το άλογο είναι ένα σπέσιαλ πιόνι που μπορεί να πηδήξει πάνω από άλλα κομμάτια, κινούμενο σε μοτίβο "". Συγκεκριμένα, στο παρακάτω διάγραμμα, το αντιπροσωπεύει την αρχική του θέση και οι αριθμοί έως αντιπροσωπεύουν πιθανές θέσεις στις οποίες το άλογο μπορεί να μετακινηθεί.
8 | ||||||||
7 | ||||||||
6 | 8 | 1 | ||||||
5 | 7 | 2 | ||||||
4 | K | |||||||
3 | 6 | 3 | ||||||
2 | 5 | 4 | ||||||
1 | ||||||||
1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 |
Το πρόγραμμά σας θα διαβάζει την αρχική θέση του αλόγου και θα εξάγει τον μικρότερο αριθμό πηδημάτων ή κινήσεων που απαιτούνται για να φτάσει σε μια θέση που θα καθορίζεται σε δεύτερη είσοδο.
Είσοδος
Το πρόγραμμά σας θα διαβάζει τέσσερις ακέραιους αριθμούς, όπου κάθε ακέραιος θα είναι μεταξύ του και του . Οι δύο πρώτοι ακέραιοι θα αντιπροσωπεύουν την αρχική θέση του αλόγου. Οι δύο δεύτεροι ακέραιοι θα αντιπροσωπεύουν την τελική του θέση.
Έξοδος
Το πρόγραμμά σας θα πρέπει να εξάγει τον ελάχιστο (μη αρνητικό ακέραιο) αριθμό κινήσεων που απαιτούνται για να μετακινηθεί το άλογο από την αρχική στην τελική θέση. Προσέξτε ότι το άλογο δεν επιτρέπεται να κινηθεί εκτός ταμπλό κατά τη διάρκεια της μετάβασής του από την αρχική στην τελική θεση.
Παράδειγμα
input
2 1
3 3
output
1
input
4 2
7 5
output
2
Comments