Düşüncelerimi etkilememesi için daha önceki yanıtları okumadım. Eğer bire bir aynısı yazan olmuşsa sebebi budur.
Çözüm önerim şu şekilde;
1000 bardak var ve bunlardan birisi zehirli ise.
Sırasıyla öncelikle bardakları 500, 500 olarak sağ ve sol olarak ayırırım ve 2 köle ile birisini soldakilerden birer yudum, öteki ile de sağdakilerden birer yudum aldırım. Bir sonrası adımda 500, 500 olanları da 250, 250; 250, 250 tekrar 2'ye bölerim bu sefer de 4 köle ile aynı işlemi tekrarlarım. 125, (62, 63), 32, 16, 8, 4, 2 şeklinde ayırarak tekrar ederim. 1 saat sonunda ölen kölelerin kesişiminden tam olarak hangi bardağın zehirli olduğunu bulabilirim. Benim çözüm önerim Humming Code'dan etkilenerek yazıldı.
Eki Görüntüle 1225548
Hatta benzer mantık ile üzerindeki sayının 2'ye bölünebilenlerini 1 köle, 3'e bölünebilenleri bir köle, 5'e, 7'ye, 11'e diyerek asal sayılar ile aslında 10-15 kişi ile bile bulunabilir. Tam sayıyı hesaplamadım ancak bu şekilde daha az kişi ile yapılabilir gibi.
Asal sayı testinde 10 ve 100 için aynı köleler ölmüyor mu örneğin? Orada farklı kuvvetler için de test yapılması gerek bence.
Benim cevabım 10. Her köle ya yaşar ya ölür zehirden. 1-0 durumu yani. Oradan da 1024 için 10 test yaptığımız gelir. Son 24'ünü atsak 512'dem büyük olduğu için değişen bir şey olmaz.
İlk 1024 sayıyı binary düşünelim. Her sayının yalnız 1 karşılığı vardır. Bu yüzden ölür-yaşar taktiğini buna uyarlayabiliriz.
Basit bir soru da benden gelsin. MxN boyutlu kareli kağıda çizilen bir çizgi en çok kaç birimkare kesebilir?
4618.4619 takımın eleme usulü basit turnuvada ( Maç yapılmadan geçilen turlar sayılmaz.) toplamda kaç maç yapılması gerekir?
Bu sitenin çalışmasını sağlamak için gerekli çerezleri ve deneyiminizi iyileştirmek için isteğe bağlı çerezleri kullanıyoruz.