JotD / QotD Ελληνική Λίστα Κουίζ (QotD)


Θέμα: Re: Quiz...Το μαγικό τετράγωνο 10χ10



(nil): Vaggelis Kapoulas (kapoulas(@)cti.gr)
Ημερομηνία: Παρ 28 Μάι 1999 - 17:39:17 EEST

Γειά και χαρά σε όλους,

(Αρχικά σκεφτόμουνα να στείλω την απάντηση μόνο στον αποστολέα
του quiz, αλλά τελικά αποφάσισα να τη μοιραστώ με όλη τη λίστα
αφού η απάντηση που δίνω δεν είναι και η μοναδική λύση)

Πρέπει να υπάρχουν πολλές (έως πάρα πολλές λύσεις (όπως θα φανεί
και από τημέθοδο που παρατίθεται στη συνέχεια).

Ενας απλός τρόπος να βρει κανείς μία (ή μερικές) λύσεις
έχει ως εξής:

1. Χωρίζουμε τα 100 κελιά σε εννέα κλάσεις, έτσι ώστε
    στην ίδια κλάση να ανήκουν κελιά που μπορεί κανείς
    να διαπεράσει μόνο με τις οριζόντιες και κάθετες
    κινήσεις (όχι τις διαγώνιες). Δηλαδή αν η κλάσεις
    είναι οι Α, Β, Γ, Δ, Ε, Ζ, Η, Θ και Ι τα κελιά
    κατηγοριοποιούνται όπως φαίνεται παρακάτω:
      Α Β Γ Α Β Γ Α Β Γ Α
      Δ Ε Ζ Δ Ε Ζ Δ Ε Ζ Δ
      Η Θ Ι Η Θ Ι Η Θ Ι Η
      Α Β Γ Α Β Γ Α Β Γ Α
      Δ Ε Ζ Δ Ε Ζ Δ Ε Ζ Δ
      Η Θ Ι Η Θ Ι Η Θ Ι Η
      Α Β Γ Α Β Γ Α Β Γ Α
      Δ Ε Ζ Δ Ε Ζ Δ Ε Ζ Δ
      Η Θ Ι Η Θ Ι Η Θ Ι Η
      Α Β Γ Α Β Γ Α Β Γ Α

2. Είναι φανερό οτι μπορούμε εύκολα (και με σχετικά
    πολλούς τρόπους) να διαπεράσουμε όλα τα μέλη μίας
    κλάσης αν ξεκινήσουμε από ένα μέλος της (μόνο με
    οριζόντιες και κάθετες κινήσεις).

3. Είναι, επίσης, φανερό οτι υπάρχουν αρκετές ακολουθίες
    μετάβασης από μία κλάση σε μιά άλλη, έτσι ώστε να
    περνάμε από κάθε κλάση μία και μόνη φορά, κάνοντας
    διαγώνιες κινήσεις. Π.χ. μία τέτοια ακολουθία είναι
    ΑΖΘΔΙΒΗΓΕ (κάνοντας τις κινήσεις πάνω-δεξιά, πάνω-δεξιά,
    κάτω-δεξιά, πάνω-δεξιά, πάνω-δεξιά, κάτω-δεξιά, πάνω-δεξιά
    και πάνω-δεξιά (από κατάλληλο μέλος της κάθε κλάσης).

4. Ετσι η μέθοδος είναι:
    α. Ξεκίνα από μία οποιαδήποτε κλάση
    β. Διαπέρασε όλη την κλάση
    γ. Μεταπήδησε στην επόμενη κλάση
    δ. Επανέλαβε από το βήμα (β) μέχρι να τελειώσουν οι κλάσεις

5. Κατά την εφαρμογή τηε παραπάνω μεθόδου πρέπει να
    προσεχθούν τα εξής:
    i. Ο τερματισμός της διαπέρασης μίας κλάσης πρέπει να γίνεται
        σε σημείο που να επιτρέπει τη μετάβαση στην επόμενη κλάση.
        Π.χ. αν για την επόμενη κλάση πρέπει να γίνει το βήμα
        πάνω-δεξιά δεν πρέπει να καταλήξουμε σε κάποιο κελί που
        να βρίσκεται πολύ πάνω ή πολύ δεξιά. (Αυτό είναι σχετικά
        εύκολο γιατί υπάρχουν αρκετοί τρόποι διαπέρασης μιας
        κλάσης)
    ii. Οι κλάσεις Ε, Ζ, Θ και Ι (με εννέα μέλη η κάθε μία)
        δεν μπορούν να διαπεραστούν ολόκληρες εάν η εκκίνηση
        δεν γίνει από το σωστό μέλος (τέσσερα από τα εννέα μέλη
        δεν μπορούν να χρησιμοποιηθούν ως σημεία εκκίνησης). Ετσι
        θα πρέπει η μεταπήδηση προς αυτές τις κλάσεις να γίνεται
        σε σωστό κελί. (Και αυτό δεν είναι δύσκολο αφού υπάρχουν
        αρκετοί τρόποι για να γίνει η διαπέραση της προηγούμενης
        κλάσης, ενώ μπορεί κανείς να δοκιμάσει και εναλλακτικές
        ακολουθίες μετάβασης από κλάση σε κλάση)

Χρησιμοποιώντας τα παραπάνω κατάφερα αρκετά εύκολα να παράγω την
παρακάτω λύση.

  1 59 99 2 58 98 3 57 97 4

 37 82 19 36 83 20 45 84 21 44

 76 34 49 77 33 48 69 32 47 70

 12 60 100 13 67 95 14 56 96 5

 38 81 18 35 88 17 46 85 22 43

 75 27 50 78 26 55 68 31 54 71

 11 61 89 16 66 94 15 65 93 6

 39 80 25 40 87 24 41 86 23 42

 74 28 51 74 29 52 73 30 53 72

 10 62 90 9 63 91 8 64 92 7

Νομίζω οτι μεταβάλλοντας τον τρόπο διαπέρασης κάθε κλάσης,
την ακολουθία των κλάσεων και το κελί εκκίνησης μπορεί κανείς
να παράγει αρκετές εναλλακτικές λύσεις.

Προφανώς η παραπάνω μέθοδος δεν μπορεί να παράγει κάθε δυνατή
λύση αφού (λογικά) υπάρχουν λύσεις που δεν διαπερνούν τη κάθε
κλάση με τη μία.

Φιλικά,

Βαγγέλης

> "Bill K." wrote:
>
> Παιδιά σόρρυ, αλλά ούτε αυτή τη λύση τη θυμάμαι... (την είχαμε βρει
> κάποτε στο σχολείο αλλά... πάει..!)
>
> Έχουμε ένα τετράγωνο 10x10. Σκοπός μας είναι να το γεμίσουμε τα 100
> τετραγωνάκια του με νούμερα από το 1 μέχρι το 100. Η τοποθέτηση
> γίνεται ως εξής.
> 1. Αρχίζουμε με το νούμερο 1 στην πάνω αριστερή γωνία του τετραγώνου.
> 2. Τον επόμενο αριθμό τον βάζουμε ακολουθώντας τους κανόνες :
> -> Μπορούμε να μετακινηθούμε απο το τετράγωνο που είμαστε (δηλ που
> βάλαμε το 1) είτε οριζόντια/κάθετα είτε διαγώνια.
> -> Αν κινηθούμε οριζόντια/κάθετα "πηδάμε" δυο τετραγωνάκια και
> βάζουμε το επόμενο νούμερο (δηλ το 2) στο 3ο τετραγωνάκι.
> -> Αν κινηθούμε διαγώνια "πηδάμε" ένα τετραγωνάκι και βάζουμε το
> επόμενο νούμερο στο 2ο διαγώνια.
> -> Δεν μπορούμε να "πατήσουμε" σε ένα τετραγωνάκι δυο φορές, δηλ
> να βάλουμε δυο αριθμούς στο ίδιο τετραγωνάκι.
> -> Αν δεν μπορούμε να κινηθούμε απο τη θέση που είμαστε, απλά
> αποτύχαμε....!!
> 3. Συνεχίζουμε με τον ίδιο τρόπο μέχρι να "φυλακιστούμε" ή να βάλουμε
> το 100!!!
>
> Αυτά και καλή επιτυχία...
>
> (Οι προγραμματιστές της παρέας δεν θα "παρεξηγηθούν" καθόλου αν
> χρησιμοποιήσουν κάποιο προγραμματάκι για την ανεύρεση του περιβόητου
> "τετραγώνου", απ' ότι θυμάμαι, είχα βγάλει ένα 8x8 με ένα απλό
> προγραμματάκι Turbo Pascal (πού να βάλω C στον 386 που είχα!!) που
> απλά έψαχνε στην τύχη και το είχε βρει μετά απο 35000 περίπου
> προσπάθειες) το οποίο και παραθέτω σαν ένα ολοκληρωμένο παράδειγμα....
>
> Να είστε καλά,
> Βασίλης. ( billk97(@)otenet.gr )

______________________________________________________________________

 Quiz of the Day ... Ελληνική Λίστα με σπαζοκεφαλιές ... και άλλα ...
 Πληροφορίες --> https://anekdota.duckdns.org/quiz_list.html
______________________________________________________________________


Γραφτείτε και εσείς στην Ελληνική Λίστα με σπαζοκεφαλιές (QotD) και στείλτε τα κουίζ σας!!!

Επιστροφή στον κεντρικό κατάλογο αυτού του αρχείου