יש מלך עם 10 משרתים ו1000 בקבוקים. אחד מהם רעיל ומי ששותה ממנו מת אחרי זמן קצר. עלייך למצוא דרך שבסבב שתיה בודד תוכל לדעת מה הבקבוק הרעיל
תשובות
הוסף תשובה
|
לצפיה בתשובות
יוני 2023
לכתוב טבלת אמת. הבקבוקים ממסופרים בצורה בינארית, המשרתים הם ה10 ביטים. לפי המשרתים שמתו ניתו לדעת מה הבקבוק שששתו ממנו
נובמבר 2023
חיפוש בינארי.
הראשון ישתה מתוך חצי מהבקבוקים.
אם הוא חי, נזרוק את הבקבוקים האלה ונמשיך עם חצי משאר הבקבוקים.
אם הוא מת נזרוק את החצי שלא שתו ממנו ונמשיך עם חצי מאלה ששתו עכשיו.
התהליך יסתיים עד 10 משרתים כי log2(1000)<10
ינואר 2024
יש לחידה 2 וריאציות.
אם יש "זמן המתנה" לרעל ולכן אי אפשר לבצע הרבה סבבים- הפתרון הוא "טבלת אמת", חפשו ביוטיוב 1000 Wine bottles.
אם אין זמן המתנה- ניתן לבצע "מקביליות" כך שבכל פעם מחלקים את מספר הבקבוקים לN קבוצות לפי מספר המשרתים שנותרו. מהקבוצה ששתה המשרת שמת מחלקים שוב לכמה שנשארו,
כלומר בהתחלה 100 לכל משרת,
לאחר מכן בערך 12,
לאחר מכן בערך 2.
כאן מספר המשרתים שימותו קבוע, בניגוד לפתרון הקודם שבו מספר המשרתים שימותו תלוי בייצוג הבקבוק המורעל.
שאלה חביבה: 25 סוסים,בכל מרוץ נוכל לשתף חמישה סוסים
איך מוצאים את השלושה המהירים ביותר בזמן המינימאלי
תשובות
הוסף תשובה
|
לצפיה בתשובות
מרץ 2023
5 מרוצים מוצא את 5 הראשונים ביותר ולאחר מכן עושה תחרות בין החמש מהירים ביותר (6 מרוצים לבנתיים סהכ) ולאחר מכן עוד מרוץ שבו משתלבים מקום 2 ו 3 מהסוס המהיר ביותר ,המקומות 2/3 מהמירוץ של המהירים ביותר ומקום 2 מהמירוץ של השני המהיר ביותר