[ब१९,ब१३,ब७]
[ ०,१३, ७] सुरुवातीची स्थिती
[ ७,१३, ०]
[१९, १, ०]
[१२, १, ७]
[१२, ८, ०]
[ ५, ८, ७]
[ ५,१३, २]
[१८, ०, २]
[१८, २, ०]
[११, २, ७]
[११, ९, ०]
[ ४, ९, ७]
[ ४,१३, ३]
[१७, ०, ३]
[१७, ३, ०]
[१०, ३, ७]
[१०,१०, ०] अंतिम स्थिती

येथे फाईल अपलोड करण्याची सुविधा असल्यास संगणक आज्ञावली देता येईल. हा कूटप्रश्न संगणक आज्ञावलीद्वारे सोडविण्याचा अल्गॉरिथम असा :

कोणत्याही स्थितीपासून (उदा. [१८, २, ०]) पुढील पिढी अशी तयार करता येईल : एखाद्या बरणीत ० लिटरपेक्षा अधिक द्रव असल्यास तो दुसऱ्या कोणत्याही पूर्ण न भरलेल्या बरणीत टाकता येईल. यात दोन शक्यतांचा विचार करावा : बरणी१ मधील सगळा द्रव बरणी२ मध्ये मावेल किंवा मावणार नाही. अश्या प्रकारे प्रत्येक बरणीतून इतर प्रत्येक बरणीत द्रव हलविण्याची शक्यता तपासून पुढील (पिढीच्या) स्थितींचा संच तयार करता येईल. तसेच आपण 'स्थिती' साठी जे डेटास्ट्रक्चर वापराल त्यात स्थितीची आतापर्यंतची उत्क्रांती साठविण्यासाठी एक उप-डेटास्ट्रक्चर वापरा. प्रत्येक वेळी नवीन अपत्य निर्मिती नंतर उत्क्रांती-मार्गात योग्य ती नोंद करा.

आता, अंतिम स्थितीची व्याख्या करा(जसे या प्रश्नात [१०,१०,०]). तसेच 'चालू पिढी', 'पुढची पिढी' व 'आतापर्यंत विचार झालेल्या स्थिती' असे तीन संच बनवा. चालू पिढी संचात सुरुवातीची स्थिती घाला.

आता जोपर्यंत चालू पिढी संच रिक्त होत नाही तोपर्यत खालील पायऱ्या पुनःपुन्हा करत राहा :
१.चालू पिढी संचात अंतिम स्थिती सापडल्यास प्रश्न सुटला. अंतिम स्थितीचा उत्क्रांतीमार्ग हे उत्तर. न सापडल्यास . . .
२.चालू पिढी संचातील प्रत्येक स्थितीकरिता पुढील पिढीतील स्थिती तयार करुन त्या 'पुढची पिढी' संचात घाला.
३.'आतापर्यंत विचार झालेल्या स्थिती' या संचातील कोणतीही स्थिती 'पुढची पिढी' संचात असल्यास ती/त्या स्थिती 'पुढची पिढी' संचातून काढून टाका.
४.'पुढची पिढी' संचातील प्रत्येक स्थिती 'आतापर्यंत विचार झालेल्या स्थिती' या संचात घाला.
५.'चालू पिढी' संच = 'पुढची पिढी' संच करा. मग 'पुढची पिढी' संच रिकामा करा.

जर चालू पिढी संच प्रश्न न सुटता रिकामा झाला तर त्याचा अर्थ हा प्रश्न सोडविता येणे शक्य नाही.

रसग्राहक