এই সমস্যায়, আমাদের একটি সংখ্যা n দেওয়া হয়েছে এবং আমাদের মোবাইল কীপ্যাড বোতাম টিপে গঠিত সমস্ত N ডিজিটের প্যাটার্ন প্রিন্ট করতে হবে। বোতামগুলি টিপানোর সময়, আমরা বর্তমান বোতামের শুধুমাত্র কাছাকাছি বোতামগুলি টিপতে পারি যেমন শুধুমাত্র বাম, ডান, উপরে, নীচে কীগুলি টিপতে পারি৷
চলুন দেখি পুরানো কীপ্যাড কেমন দেখায় −
1 | 2 এবিসি | 3 ডিইএফ |
4 জিএইচআই | 5 জেকেএল | 6 MNO |
7 পিকিউআরএস | 8 টিইউভি | 9 ইংরেজি বর্ণমালার শেষ চারটি বর্ণ |
* | 0 | # |
সমস্যাটি বোঝার জন্য একটি উদাহরণ নেওয়া যাক
ইনপুট:n=2আউটপুট:12 14 21 23 25 32 36 41 45 47 52 54 56 58 63 65 69 74 78 85 87 89 80 96 98
এই সমস্যা সমাধানের জন্য, আমরা একটি গভীরতা-প্রথম অনুসন্ধান (DFS) ব্যবহার করব। DFS-এ, আমরা সংখ্যার প্রথম অঙ্ক হিসাবে আমাদের কীপ্যাডের সমস্ত কীগুলিকে এক এক করে নির্বাচন করব। এখন, আমরা DFS (যা বাম, ডান, উপরে বা নিচে ব্যবহার করে সংখ্যার বাকি সংখ্যাগুলি তৈরি করব কী স্টোকস)।
উদাহরণ
উপরের সমাধান বাস্তবায়নের জন্য প্রোগ্রাম -
#includeNamespace ব্যবহার করে y <3 &&!পরিদর্শন করা হয়েছে[x][y]);}অকার্যকর অনুসন্ধান নম্বর(বুল পরিদর্শন করা হয়েছে[][3], int কীপ্যাড[][3], int n, স্ট্রিং প্যাটার্ন, int x, int y) { pattern.push_back ((কীপ্যাড[x][y] + '0')); if (pattern.size() ==n) { cout< আউটপুট
কিপ্যাড থেকে উৎপন্ন সমস্ত 2 সংখ্যার নম্বর হল −12 14 23 25 21 36 32 45 47 41 56 58 54 52 69 65 63 78 74 89 80 87 85 98 96 96 পূর্ব>