Υπάρχουν 1000 κουβάδες, ο ένας περιέχει δηλητήριο, οι υπόλοιποι νερό.

Ας χαλαρώσουμε και λίγο... Aς κουτσομπολέψουμε μια σταλιά, ας πούμε και κανένα ανέκδοτο!

Συντονιστές: WebDev Moderators, Super-Moderators

Απάντηση
nkast
Δημοσιεύσεις: 137
Εγγραφή: 15 Νοέμ 2009 20:31
Επικοινωνία:

Υπάρχουν 1000 κουβάδες, ο ένας περιέχει δηλητήριο, οι υπόλοιποι νερό.

Δημοσίευση από nkast » 31 Αύγ 2013 03:50

Υπάρχουν 1000 κουβάδες, ο ένας περιέχει δηλητήριο, οι υπόλοιποι νερό.
Δεν διαφέρουν σε τίποτα.
Αν ένα γουρούνι πιει αυτό το δηλητήριο πεθαίνει μέσα σε 30 λεπτά.

Ποιος είναι ο ελάχιστος αριθμός από γουρούνια που χρειάζεσαι για να εντοπίσεις τον κουβά με το δηλητήριο εντός μιας ώρας;



:hammer:
Όποιος το βρει κερδίζει χρυσουν ωρολογιον (= Not Really)

Άβαταρ μέλους
Enigma
Honorary Member
Δημοσιεύσεις: 2271
Εγγραφή: 06 Δεκ 2002 02:46
Τοποθεσία: Athens

Υπάρχουν 1000 κουβάδες, ο ένας περιέχει δηλητήριο, οι υπόλοιποι νερό.

Δημοσίευση από Enigma » 31 Αύγ 2013 08:01

Εξαρτάται από πόσους κουβάδες μπορεί να πιεί νερό ένα γουρούνι σε μισή ώρα! 8)
Εικόνα


seeder
Δημοσιεύσεις: 197
Εγγραφή: 11 Αύγ 2011 20:12

Υπάρχουν 1000 κουβάδες, ο ένας περιέχει δηλητήριο, οι υπόλοιποι νερό.

Δημοσίευση από seeder » 31 Αύγ 2013 12:50

Καλημέρα.
Και εγώ κατέληξα οτι υπαρχουν ελλειπή δεδομενα οπως λεει και ο Enigma.

Η απαντηση είναι καμια "κουφη" μαλλον.
Οπως πχ. "που υπογράφηκε η συνθήκη της Ανεξαρτησίας της Αμερικής ;"
Απάντηση "Στο κατω μέρος της σελιδας"
ή "τι γίνεται οταν μια πέτρα πέσει στο νερό"
Απάντηση "βρέχεται"

Αν όντως υπάρχει λογική απαντηση δώσε όλα τα στοιχεια να "παίξουμε".

seeder
Δημοσιεύσεις: 197
Εγγραφή: 11 Αύγ 2011 20:12

Υπάρχουν 1000 κουβάδες, ο ένας περιέχει δηλητήριο, οι υπόλοιποι νερό.

Δημοσίευση από seeder » 31 Αύγ 2013 12:55

Μπορει η απαντηση να είναι:
"Ενα γουρουνι"
Γιατι ψαχνεις τον ελάχιστο αριθμό και δεν διευκρινίζεις να μέσα σε μια ώρα θα πρέπει ετσι και αλλιως να το βρεί !

vevhlos
Δημοσιεύσεις: 55
Εγγραφή: 01 Μαρ 2008 15:35

Υπάρχουν 1000 κουβάδες, ο ένας περιέχει δηλητήριο, οι υπόλοιποι νερό.

Δημοσίευση από vevhlos » 31 Αύγ 2013 12:58

Αν το γουρούνι πεθαίνει σε ακριβώς 30 λεπτά, τότε χρειάζεσαι μόνο ένα θαραλέο και πολύ διψασμένο γουρούνι. Αν και νομίζω ότι θες μαθηματική προσέγγιση, οπότε εννοείς πάνω-κάτω 30 λεπτά.

sibas
Honorary Member
Δημοσιεύσεις: 1857
Εγγραφή: 21 Φεβ 2003 01:21
Τοποθεσία: Μια εδώ.. Μια εκεί.. Σήμερα είμαι εδώ!!!
Επικοινωνία:

Υπάρχουν 1000 κουβάδες, ο ένας περιέχει δηλητήριο, οι υπόλοιποι νερό.

Δημοσίευση από sibas » 31 Αύγ 2013 13:47

για 10-15 λεπτά κόλλησα στο τριπάκι του να βρω την απάντηση μέχρι που σκέφτηκα ότι η απάντηση θα βρίσκεται κάπου στο internet! :lol:

googleit "if a pig drink this poison dies within 30 minutes"
και θα βρείτε τη παίζει..

Λύση στο The Emperor
http://www.folj.com/puzzles/very-diffic ... uzzles.htm

Άβαταρ μέλους
dva_dev
Script Master
Δημοσιεύσεις: 3790
Εγγραφή: 16 Σεπ 2005 01:32
Επικοινωνία:

Υπάρχουν 1000 κουβάδες, ο ένας περιέχει δηλητήριο, οι υπόλοιποι νερό.

Δημοσίευση από dva_dev » 31 Αύγ 2013 18:52

Θα έλεγα ότι ο ελάχιστος είναι ένα γουρούνι.
Έχεις ένα γουρούνι, του δίνεις να πιει από όποιον κουβά επιλέξεις στην τύχη, το πίνει, πεθαίνει, βρήκες τον κουβά με το δηλητήριο.
:D

Από την άλλη αν θέλεις να είσαι εντελώς σίγουρος ότι μπορείς να βρεις τον οποιοδήποτε κουβά σίγουρα, λείπουν στοιχεία.
Υποθέτοντας ότι το δηλητήριο δρα ακριβώς στα 30 λεπτά, παίρνεις ένα γουρούνι και κάθε 20" του δίνεις να πιει και από διαφορετικό κουβά. Χρονομετράς και στα 30'+(χ-1)*20" μόλις δεις ότι γουρούνι πεθαίνει ξέρεις ότι το δηλητήριο είναι στον χ κουβά (θεωρώντας ότι το χ είναι 1 based).
Υποθέτοντας ότι το δηλητήριο δρα είτε αμέσως είτε μέσα σε 1h max, γιατί εξαρτάται και από την αντοχή του γουρουνιού, τότε χρειάζεσαι 1000 γουρούνια να πιει το καθένα και από διαφορετικό κουβά.

nkast
Δημοσιεύσεις: 137
Εγγραφή: 15 Νοέμ 2009 20:31
Επικοινωνία:

Υπάρχουν 1000 κουβάδες, ο ένας περιέχει δηλητήριο, οι υπόλοιποι νερό.

Δημοσίευση από nkast » 31 Αύγ 2013 23:56

seeder έγραψε:Καλημέρα.
Και εγώ κατέληξα οτι υπαρχουν ελλειπή δεδομενα οπως λεει και ο Enigma.
Η απαντηση είναι καμια "κουφη" μαλλον.
Οχι, δεν εχει εξυπνακίστικη απαντηση.
Ανεβασα την ερώτηση αρχικά στο 'γλώσσες προγραμματισμού - γενικά' γιατι μπορει να απαντηθει εφαρμόζοντας αρχές της υπολογιστικής θεωρίας, συνδιαστική ή ακομα και κοινή λογική. Τωρα μεταθέρθηκε στα αναλαφρα οποτε φανταζομαι πως ολες οι 'Απαντήσεις' "παιζουν".

Παντος, ο enigma δεν είπε τιποτα για ελλειπή δεδομενα. Ο διαλογος που είδες μεταφράζεται
(εφαρμοζοντας τους μυστικούς κώδικες επικοινωνίας των τροβαδούρων του 16 αιωνα):
enigma: "Βρήκα ηδη τη λύση! Αυτή είναι;"
nKast: "Ναι, αυτη βρήκα και εγω"

seeder έγραψε:Αν όντως υπάρχει λογική απάντηση δώσε όλα τα στοιχειά να "παίξουμε".
Αυτα είναι τα στοιχεία. Δεν θα αρχίσω να διευκρινίζω αν τα γουρούνια ειναι αφρικανικα ή ευρωπαϊκά :-? Το πρόβλημα δεν μου δωθηκε πακέτο με την 'σωστή' απάντηση ουτε ημουν εκει για να ξερω τι χρώμα είναι οι κουβάδες. Ολες οι απαντήσεις 'παίζουν'!
Αν πιστευεις πως κατι είναι παγίδα ή κατι δεν διευκρινίζεται, κανε οτι ο @vevhlos και ο @dva_dev, ξεκίνα με 'Θεωρω πως τα γουρούνια πεθαίνουν ακριβως σε 30λεπτα, οι κουβάδες εχουν αρκετό νερο και μπορω να ταίσω τα ολα τα γουρόυνια στιγμιαια οσες φορες θέλω' και προχώρα προς την λύση που νομίζεις.

@vevhlos
Το πρόβλημα λεει πως οι κουβάδες δεν διαφέρουμε σε τιποτα. Οποτε αποκλείει εξυπνακίστικες απαντήσεις και παραπέμπει σε μαθηματική λύση. Απο την αλλη καλο είναι τα γουνούνια να είναι ολόκληρα, οχι κλάσματα πχ ~=499,125 γουρουνια!
Θα του δώσεις να πιεί απο ολους τους κουβάδες; Τότε το μοναδικό γουρουνι θα πεθάνει στα σιγουρα. Πως θα ξερεις ποιος κουβάς έχει το δηλητήριο;

@sibas
Σημερα το να googlaρεις την λύση ειναι μια πραγματικότητα. Καμια φορά δεν βρίσκεις ακριβως αυτο που ψαχνεις αλλα σου δίνει καλες ιδεες. Πως θα εφαρμοζες την binary λογική του emberor στο συγκεκριμένο πρόβλημα; Πόσα γουρούνια και απο ποιους κουβάδες θα πιουν;

@dva_dev
1) Ναι, πρέπει η τεχνική να δουλεύει κάθε φορά. Όχι 1 στις 1000.
2) Ενδιαφέρον! Θα χρειαστείς 5.55 ωρες για να ταΐσεις το γουρούνι με τον τελευταίο κουβά.
3) Σωστά! Υπό αυτές τις χειρότερες προϋποθέσεις έχουμε ένα ελάχιστο αριθμό 1000.
Αν δεχτούμε πως το γουρούνι πεθαίνει σε ακριβώς 30 λεπτά μπορούμε να το μειώσουμε αυτό κι αλλο, πχ στο μισό;


---
Για την ιστορία, το προβλημα το βρήκα σε ενα site οπου λέγετε πως ηταν μερος ενος job interview. Αν θελετε να ζυγίσετε τους κουβάδες, να τους βράσετε ή να φατε τα γουρούνια καντε το! Αρκεί να δωσει στο τελος αριθμό γουρουνιών. :D



:hammer: :hammer: :hammer:

nkast
Δημοσιεύσεις: 137
Εγγραφή: 15 Νοέμ 2009 20:31
Επικοινωνία:

Υπάρχουν 1000 κουβάδες, ο ένας περιέχει δηλητήριο, οι υπόλοιποι νερό.

Δημοσίευση από nkast » 01 Σεπ 2013 01:34

Τεσπα, Η λύση που εχω βρει και υποψιαζομαι και ο enigma, vevhlos, dva_dev κανουν την παραδοχή πως το γουρούνι πεθαίνει ακριβώς στα 30'.

Ποσα γουρουνια χρειαζονται αν πεθαίνει μέσα σε 30 λεπτά.
Δηλαδη απο 1' εως 30' max;

Άβαταρ μέλους
dva_dev
Script Master
Δημοσιεύσεις: 3790
Εγγραφή: 16 Σεπ 2005 01:32
Επικοινωνία:

Υπάρχουν 1000 κουβάδες, ο ένας περιέχει δηλητήριο, οι υπόλοιποι νερό.

Δημοσίευση από dva_dev » 01 Σεπ 2013 02:23

2) Ενδιαφέρον! Θα χρειαστείς 5.55 ωρες για να ταΐσεις το γουρούνι με τον τελευταίο κουβά.
Εντάξει δεν κολλάμε εκεί, αν δεν βγαίνουν οι υπολογισμοί μειώνεις το διάστημα. Από 20" το κάνεις 1" ή ακόμα μικρότερο. Π.χ. το κάνεις 0.5" και έχεις 30'+(χ-1)*0.5" (αλλά θέλεις ρολόι με χρονόμετρο ακριβείας πλέον :) ).
3) Σωστά! Υπό αυτές τις χειρότερες προϋποθέσεις έχουμε ένα ελάχιστο αριθμό 1000.
Αν δεχτούμε πως το γουρούνι πεθαίνει σε ακριβώς 30 λεπτά μπορούμε να το μειώσουμε αυτό κι αλλο, πχ στο μισό;
Εχεις λοιπόν 30' για να μοιράσεις τους 1000 κουβάδες στον αριθμό γουρουνιών που θέλεις. Είτε μπορείς να το κάνεις με 1 γουρούνι θεωρώντας ότι μπορεί να πιει τον κάθε κουβά σε χρόνο dt είτε να θεωρήσεις ότι θέλει Χ λεπτά. Οπότε ανά Χ λεπτά μπορεί το κάθε γουρούνι να πίνει και από διαφορετικό κουβά. Διαιρείς ανάλογα το 1000 με τους κουβάδες που μπορεί να πιει και κάθε γουρούνι και βρίσκεις πόσα χρειάζεσαι.

Από την άλλη χρειάζεται να πιει όλον τον κουβά το γουρούνι για να πεθάνει ή μπορεί να πιει έστω και λίγο; Υπάρχει κάποιο μέγιστο όριο στο πόσους κουβάδες μπορεί να πιεί ή όχι; Χρειάζεται κάποιο χρόνο για να πιει τον κουβά ή όχι;

Επειδή όλα αυτά είναι ανοιχτά ερωτήματα που δεν καθορίζουν σαφώς το πρόβλημα και τα προβλήματα πληροφορικής πρέπει να είναι σαφώς προσδιορισμένα για να λυθούν - χωρίς υποθέσεις και παραδοχές - η μόνη απάντηση που θα έλεγα ότι μπορεί να ισχύει (όποιοι κι αν είναι οι περιορισμοί και οι απαντήσεις στα ερωτήματα που δεν φαίνεται να απαντά η εκφώνηση όπως την έχεις αναφέρει) θα έλεγα ότι είναι 1000 γουρούνια (άντε 999 αν θέλεις να ελαχιστοποιήσεις αφήνοντας έναν κουβά εκτός και ελέγχοντας ότι δεν έχει πεθάνει κανένα γουρούνι οπότε το δηλητήριο είναι στον τελευταίο).
Ποσα γουρουνια χρειαζονται αν πεθαίνει μέσα σε 30 λεπτά.
Δηλαδη απο 1' εως 30' max;
Αφού δεν ξέρεις πόση ώρα ακριβώς χρειάζεται θα πρέπει να περιμένεις το μέγιστο 30' πριν ξαναδώσεις σε ένα γουρούνι κάποιον άλλο κουβά να πιει. Οπότε έχεις 2 μισάωρα, το κάθε γουρούνι μπορεί να πιει μέχρι 2 φορές, άρα θέλεις 500 γουρούνια.


Αυτό που μου φαίνεται χαζομάρα σε αυτού του είδους τα προβλήματα είναι ότι αφενός δεν έχουν λύση, αφετέρου για να έχουν λύση πέρα από τα 1-2 δεδομένα που σου δίνει το πρόβλημα κάνεις εσύ μόνος σου επιπλέον 1000 παραδοχές-υποθέσεις.
...αν η γιαγιά μου είχε ροδάκια θα ήταν πατίνι.

vevhlos
Δημοσιεύσεις: 55
Εγγραφή: 01 Μαρ 2008 15:35

Υπάρχουν 1000 κουβάδες, ο ένας περιέχει δηλητήριο, οι υπόλοιποι νερό.

Δημοσίευση από vevhlos » 01 Σεπ 2013 03:21

+1 @dev_dva Αν και πιθανότατα λύνεται και με λιγότερα γουρούνια, ίσως με κάποιο έξυπνο rotation με τα γουρούνια να πίνουν από πολλαπλούς κουβάδες κάθε φορά.

facebookad
Δημοσιεύσεις: 243
Εγγραφή: 08 Ιαν 2013 11:23

Υπάρχουν 1000 κουβάδες, ο ένας περιέχει δηλητήριο, οι υπόλοιποι νερό.

Δημοσίευση από facebookad » 01 Σεπ 2013 08:45

Το προβλημα ειναι ηλίθιο.
Θα μπορουσες ανετα με 33 Γουρουνια ως εξης
Τα 33 γουρουνια καθε ενα λεπτο πίνουν απο εναν κουβα νερο καθε λεπτο ταυτόχρονα(Αριθμιμενα γουρουνια αριθμημενοι κουβαδες)
Το πρωτο λεπτο εχει πιει το γουρουνι 1 απο τον κουβα 1 το γουρουνι 2 απο τον κουβα 2 ... το 33 γουρουνι απο τον 33 κουβα
Το δευτερο λεπτο εχει πιει το γουρουνι 1 απο τον κουβα 34 το γουρουνι 2 απο τον κουβα 35 κλπ
Ετσι σε 30 λεπτα εχουν πιει 30 χ 33 =999 κουβαδες

Αν δεν πεθανει κανενα με το τελος της ωρας poisoned ο τελευταιος κουβας

Τωρα αν πεθανει το 15ο γουρουνι το 30λεπτο θα ειναι ο 15ος κουβας
Αν πεθανει το 22 γουρουνι το 37λεπτο τοτε θα ειναι ο κουβας που ηπιε το 22γουρουνι το 7ο λεπτο δηλαδη 6*33 + 22 =220ος κουβας

Το προβ΄λημα ειναι ηλιθιο γιατι θα μπορουσα να μην υπολογιζω ενα γουρουνι να πινει ανα λεπτο αλλα ανα 10 20 30 40 δευτερολεπτα οποτε ολα ειαι σχετικα!

Θεωρητικη απαντηση και με 1 γουρουνι γινεται με τον ιδιο τροπο. Απλά θα πρεπει μεσα σε 30 λεπτα = 1800 σεc να εχει πιει και απο τους 999 κουβαδες απο ενα κουβα σκαρτα σε 2 δευτερολεπτα

Άβαταρ μέλους
Enigma
Honorary Member
Δημοσιεύσεις: 2271
Εγγραφή: 06 Δεκ 2002 02:46
Τοποθεσία: Athens

Υπάρχουν 1000 κουβάδες, ο ένας περιέχει δηλητήριο, οι υπόλοιποι νερό.

Δημοσίευση από Enigma » 01 Σεπ 2013 09:46

Αφού ο χρόνος είναι μεταβλητή 1 έως 30 mins η λύση για σίγουρο αποτέλεσμα είναι αυτή που είπε o dva_dev, 500 γουρούνια.
Εικόνα

seeder
Δημοσιεύσεις: 197
Εγγραφή: 11 Αύγ 2011 20:12

Υπάρχουν 1000 κουβάδες, ο ένας περιέχει δηλητήριο, οι υπόλοιποι νερό.

Δημοσίευση από seeder » 01 Σεπ 2013 12:43

Καλημερα!
@nkast
Δωσε την ερωτηση οπως την βρηκες και ισως βρεθει η λυση . Στην μετάφραση σου το ποιο πιθανο ειναι να παραληψες δεδομενα.
Μην βαζεις το κοσμο να καιει τους εγκεφαλους του αδικα.
Εσυ ξερεις την απαντηση ;

Απάντηση

Επιστροφή στο “Χαλαρά κι Ανάλαφρα”

Μέλη σε σύνδεση

Μέλη σε αυτήν τη Δ. Συζήτηση: Δεν υπάρχουν εγγεγραμμένα μέλη και 4 επισκέπτες