Σελίδα 1 από 1

Αφαιρώντας μάρκες

Δημοσιεύτηκε: Παρ Οκτ 24, 2014 11:48 pm
από ealexiou
Δύο παίκτες παίζουν αφαιρώντας εναλλάξ μάρκες από από ένα σωρό με 100 μάρκες. Ο πρώτος παίκτης στην πρώτη κίνηση μπορεί να πάρει όσες μάρκες θέλει, δεν μπορεί, φυσικά, να αφαιρέσει ολόκληρο το σωρό. Μετά την πρώτη κίνηση του πρώτου παίκτη, οποιοσδήποτε παίκτης αφαιρεί τουλάχιστον μία μάρκα έως το πολύ διπλάσιες όσων πήρε ο αντίπαλος του κατά την προηγούμενη κίνηση του (π.χ αν ένας παίκτης πάρει τρεις (3) μάρκες σε κάποια κίνηση του, αυτός που παίζει μετά μπορεί να πάρει από μία έως το πολύ έξι (6). Ο παίκτης που παίρνει την τελευταία μάρκα κερδίζει το παιχνίδι. Υπάρχει στρατηγική για ένα εκ των δύο να κερδίσει το παιχνίδι;

Re: Αφαιρώντας μάρκες

Δημοσιεύτηκε: Σάβ Οκτ 25, 2014 10:38 am
από Demetres
Στο παιγνίδι P(n,m) έχουμε τους ίδιους ακριβώς κανόνες μόνο που αρχίζουμε με n μάρκες και στην πρώτη του κίνηση ο πρώτος παίκτης δικαιούται να αφαιρέσει το πολύ m μάρκες. Π.χ. στο πρόβλημα μας ενδιαφέρει το παιγνίδι P(100,99).

Έστω T_n το μικρότερο m ώστε ο πρώτος παίκτης να κερδίζει το παιγνίδι P(n,T_n). Είναι απλό ότι Τ_1 = 1 και Τ_2=2. Μετά έχω Τ_3 = 3 αφού στο (3,m) παιχνίδι αν αφαιρεθεί μία μάρκα τότε θα ξεκινάει ο δεύτερος παίκτης το παιγνίδι (2,2) το οποίο μπορεί να κερδίσει ενώ αν αφαιρεθούν δύο μάρκες θα ξεκινάει ο δεύτερος παίκτης το παιγνίδι (1,4) το οποίο πάλι κερδίσει. Μετά παίρνω T_4 = 1 αφού αν ο πρώτος παίκτης αφαιρέσει μία μάρκα τότε θα ξεκινάει ο δεύτερος παίκτης το παιγνίδι (3,2) το οποίο γνωρίζουμε ήδη ότι δεν μπορεί να κερδίσει αφού T_3 = 3. Προχωρώντας έτσι βρίσκουμε T_5 = 5,T_6=1,T_7=2 κ.τ.λ.

Με αρκετή προσοχή (ή με την βοήθεια υπολογιστή) μπορούμε να υπολογίσουμε και το T_{100}. Βγαίνει T_{100} = 3. Οπότε ο πρώτος παίκτης έχει στρατηγική νίκης και στην πρώτη του κίνηση πρέπει να αφαιρέσει τρεις μάρκες.

Για να γίνει πιο ενδιαφέρον το ερώτημα, ας υπολογιστεί το T_n. (Εδώ ο υπολογιστής δεν μπορεί να μας βοηθήσει!) Νομίζω πλέον ότι αυτό το ερώτημα είναι για διαγωνισμό Seniors.

Re: Αφαιρώντας μάρκες

Δημοσιεύτηκε: Σάβ Οκτ 25, 2014 7:36 pm
από ealexiou
Δημήτρη, πράγματι για τον αριθμό 100 νικητής είναι ο πρώτος παίχτης και η αφαίρεση 3 μαρκών από τον πρώτο παίκτη είναι μια σωστή κίνηση. Υπάρχει όμως πολύ πιο εύκολη και πολύ πιο ξεκούραστη μέθοδος-στρατηγική, έτσι που αν δοθεί ένας αριθμός σχεδόν άμεσα μπορούμε να υπολογίσουμε και να βρούμε αν νικητής θα είναι: α) O πρώτος και ποιόν αριθμό πρέπει να αφαιρέσει, ή β) νικητής θα είναι ο δεύτερος, οπότε κάνοντας την “κίνηση” του ο πρώτος, ο δεύτερος έρχεται στην θέση του πρώτου της (α) περίπτωσης και κάνει αντίστοιχα τις σωστές κινήσεις.
Έτσι στην (α) περίπτωση, που νικητής θα είναι ο πρώτος, κάνοντας ο πρώτος την μοναδικά σωστή “κίνηση” ο δεύτερος όποια “κίνηση” και να κάνει ο αριθμός μαρκών που θα μείνουν οπωσδήποτε θα είναι της περίπτωσης (α) και ο πρώτος ξανακάνει εύκολα κάποιον υπολογισμό και βρίσκει τον μοναδικά σωστό αριθμό μαρκών που πρέπει να αφαιρέσει κ.ο.κ για κάποιους κύκλους που επαναλαμβάνεται η ίδια μέθοδος υπολογισμού. Αυτά ισχύουν και για μεγαλύτερους αριθμούς από το 100, π.χ αν ο αριθμός μαρκών είναι ο 180761 εύκολα βρίσκουμε ποιός μπορεί να είναι ο νικητής και αν είναι ο πρώτος παίκτης ποιο αριθμό μαρκών να αφαιρέσει, γνωρίζοντας την μέθοδο-στρατηγική βέβαια.
Όπως υπολόγισες για αριθμό μαρκών: 2 νικητής είναι ο δεύτερος παίκτης, 3 νικητής ο δεύτερος, 4 νικητής ο πρώτος παίκτης, 5 νικητής ο δεύτερος, για 6 μάρκες νικητής θα είναι ο πρώτος παίκτης... κ.λ.π.... ;)

Re: Αφαιρώντας μάρκες

Δημοσιεύτηκε: Πέμ Οκτ 30, 2014 8:32 am
από ealexiou
Κάθε θετικός αριθμός, που δεν είναι όρος της ακολουθίας Fibonacci, μπορεί να εκφρασθεί μονοσήμαντα ως άθροισμα διαφορετικών αριθμών Fibonacci, χωρίς στην έκφραση αυτή να εμφανισθούν δύο διαδοχικοί αριθμοί. Ένας αριθμός Fibonacci δεν μπορεί να εκφρασθεί ως άθροισμα μη διαδοχικών αριθμών παρά μόνο ως έκφραση του εαυτού του (και του F_{0}=0)
Αν ο αριθμός του παιχνιδιού είναι αριθμός Fibonacci, νικητής είναι ο δεύτερος παίχτης.
Σωστά βρήκε ο Δημήτρης ότι για τον αριθμό 2,T_{2}=2, για τον 3, T_{3}=3,  T_{5}=5 και αν συνέχιζες Δημήτρη θα έβρισκες T_{8}=8, T_{13}=13,...
Αν ο αριθμός του παιχνιδιού δεν είναι αριθμός Fibonacci, νικητής είναι ο πρώτος παίχτης, ο οποίος εκφράζει τον αριθμό ως άθροισμα διαφορετικών, μη διαδοχικών, αριθμών Fibonacci αρχίζοντας από τον μεγαλύτερο πλησιέστερο αριθμό F, στην περίπτωση μας ο 89, έτσι 100=89+11=89+8+3, άρα T_{100}=3. Δεν χρειάζεται όμως να φτάσουμε μέχρι τέλους, σταματάμε στην περίπτωση του αριθμού 100 στο 100=89+11 και αφαιρούμε το 11 και αφήνουμε για τον 2ο παίκτη τον F_{11}=89, καθώς 89-2*11=67>F_{10}=55 και δεν μπορεί ο δεύτερος παίκτης να μας αφήσει αριθμό Fibonacci.
Το ίδιο και στην περίπτωση του αριθμού 180761, ο πλησιέστερος αριθμός Fibonacci είναι ο F_{26=}121393 και αναλύοντας έχουμε 180761=121393+46368+13000= 121393+46368+ 10946 +1597+ 377+55+21+3+1, δεν χρειάζεται να φτάσουμε μέχρι το 1 για να το αφαιρέσουμε. Αφαιρούμε το 13000, καθώς 180761-13000-2*13000= 141761> F_{26=}121393 και ο δεύτερος αφαιρώντας έως και 2*13000=26000 μας αφήνει αριθμό μη Fibonacci και η διαδικασία επαναλαμβάνεται.
Ένα παράδειγμα με μικρούς αριθμούς. Έστω ότι ο αριθμός είναι ο 20. Το παιχνίδι το κερδίζει ο 1ος παίκτης. 20=13+5+2, αφαιρεί 2 μάρκες. Μένουν 18, έστω ότι ο 2ος αφαιρεί 4 μάρκες, μένουν 14, 14=13+1, αφαιρούμε μία, μένουν 13, ο δεύτερος έστω ότι αφαιρεί μία, μένουν 12, 12=8+3+1
αφαιρούμε μία, μένουν 11. Ο δεύτερος έστω μία, μένουν 10,10=8+2, αφαιρούμε 2, μένουν 8, ο δεύτερος αναγκαστικά μία ή δύο μπορεί να αφαιρέσει 8-1=7,8-2=6. 7=5+2, 6=5+1. Αφαιρούμε αντίστοιχα δύο ή μία, μένουν 5 για τον δεύτερο, αναγκαστικά αφαιρεί μία, μένουν 4=3+1. Αφαιρούμε μία και τελειώσαμε.

Re: Αφαιρώντας μάρκες

Δημοσιεύτηκε: Πέμ Οκτ 30, 2014 9:42 am
από Demetres
Ευθύμη, αυτή ήταν και η μέθοδος που είχα βρει. Νομίζω όμως πως το να βρεθεί αυτό αλλά και να αποδειχθεί δεν είναι και τόσο απλό.

Παρεμπιπτόντως, καλό είναι οι seniors να γνωρίζουν ότι κάθε αριθμός γράφεται με μοναδικό τρόπο ως άθροισμα μη διαδοχικών αριθμών Fibonacci. Στην συγκεκριμένη περίπτωση η γνώση του ευκολύνει αρκετά στο να βρεθεί η στρατηγική. Το αποτέλεσμα ονομάζεται θεώρημα Zeckendorf και το έχουμε δει εδώ.

Re: Αφαιρώντας μάρκες

Δημοσιεύτηκε: Δευ Μάιος 02, 2022 10:05 pm
από gbdalako
Ευθύμη, ωραίο πρόβλημα πράγματι. Υποθέτω ότι έχουμε ένα παρόμοιο χόμπυ :)

Re: Αφαιρώντας μάρκες

Δημοσιεύτηκε: Τρί Μάιος 03, 2022 12:16 am
από gbaloglou
gbdalako έγραψε: Δευ Μάιος 02, 2022 10:05 pm Ευθύμη, ωραίο πρόβλημα πράγματι. Υποθέτω ότι έχουμε ένα παρόμοιο χόμπυ :)
Γιώργο ο Ευθύμης δεν είναι πια μαζί μας, απεβίωσε στις αρχές του 2022 -- σ' ευχαριστούμε όμως που μας τον θύμισες!

Re: Αφαιρώντας μάρκες

Δημοσιεύτηκε: Τρί Μάιος 03, 2022 4:26 pm
από gbdalako
Ζητάω ειλικρινά συγνώμη, λοιπόν - δεν ήξερα.
Αιωνία του η μνήμη.

Re: Αφαιρώντας μάρκες

Δημοσιεύτηκε: Τρί Μάιος 03, 2022 9:14 pm
από gbaloglou
gbdalako έγραψε: Τρί Μάιος 03, 2022 4:26 pm Ζητάω ειλικρινά συγνώμη, λοιπόν - δεν ήξερα.
Αιωνεία του η μνήμη.
Καινούργιος είσαι, πως να το ήξερες;! Βλέπε κάποια σχόλια εδώ.