Özellikle ÖZETİ| yazılımla alakalı iş görüşmelerinde sorulan ve algoritmik düşüncenizi test eden bir soruyla karşınızdayız. Bu mantık sorusuyla sizler de algoritmik bir zekaya sahip olup olmadığınızı öğrenebilirsiniz.
İki kovayla bir ölçüm yapmanızı isteyen bu soru, yazılım mühendisi gibi alanlarda mülakata giren insanların sık sık karşısına çıkıyor. O zaman haydi soruya:
Biri 3, diğeri 5 litre kapasiteli iki adet kovanız var. Bu kovalara su doldurup boşaltabiliyorsunuz.
Bir kabı tamamen doldurabilir veya boşaltabilirsiniz. Ayrıca bir kaptaki suyu diğer kabı doldurmak için de kullanabilirsiniz. Soru ise şu: Bu iki kovayı doldurup boşaltarak 4 litrelik bir su elde edebilir misiniz?
Soruyu çözmeniz için size biraz zaman tanıyalım.
O zaman haydi şimdi cevaba geçelim.
Öncelikle bu bir algoritma sorusu, yani farklı yollarla doğru sonuca ulaşabiliriz. Bizler ise sizlere iki farklı yolla 4 litre suya ulaşmayı anlatacağız. Bunu yaparken de algoritmik bir sistemde, yani adım adım anlatacağız.
Biraz daha uzun yoldan 4 litre suya ulaşmak için:
3 litre kovaya su doldurun.Doldurduğunuz bu suyu 5 litrelik kovaya dökün. 5 litrelik kovada şimdi 3 litre su var.3 litre kovayı yeniden doldurun.Kova tamamen dolana kadar bu suyu da 5 litrelik kovaya dökün. Şimdi 3 litrelik kovada 1 litre suyunuz kaldı.5 litrelik kovada suyu tamamen dökün.3 litrelik kovada kalan 1 litrelik suyu 5 litrelik kovaya dökün.3 litrelik kovayı yeniden doldurun.3 litrelik kovadaki suyu 5 litrelik kovaya dökün. Elinizde 4 litre su kalmış oldu.Şimdi de daha az adımla 4 litre suyu nasıl elde edeceğimize bakalım.
5 litrelik kovaya su doldurun.Bu suyu tam dolana kadar 3 litrelik kovaya dökün. 5 litrelik kovada 2 litre su kaldı. 3 litrelik kovayı boşaltın.5 litrelik kovanın içindeki 2 litre suyu 3 litrelik kovaya boşaltın.5 litrelik kovayı tamamen doldurun.5 litrelik kovayı tam dolana kadar 3 litrelik kovaya dökün. Elinizde 4 litre su kalmış oldu.Peki siz cevabı kaç adımda buldunuz? Sorunun cevabını farklı bir adımda bulduysanız bizlere yorumlarda yazabilirsiniz.
Kaynaklar: Stack Exchange, Careercup
Editor : Şerif SENCER