আমরা n সিঁড়ি এবং 2 রং (লাল এবং হলুদ) দেওয়া হয় যা দিয়ে এই সিঁড়ি আঁকা হবে। আমাদের কাজ হল সিঁড়িগুলি এমনভাবে অঙ্কিত করার উপায়গুলি গণনা করা যাতে পরপর দুটি ধাপ হলুদ রঙের না হয়৷
সমস্যাটি বোঝার জন্য একটি উদাহরণ দেওয়া যাক,
ইনপুট
3
আউটপুট
5
ব্যাখ্যা
যে উপায়ে সিঁড়ি আঁকা যায় সেগুলো হল YRY, RYR, YRR, RRY, RRR। এখানে R দ্বারা লাল রং, Y বোঝায় হলুদ রঙএই সমস্যা সমাধানের জন্য, চলুন দেখি সিঁড়িগুলো কতগুলো উপায়ে আঁকা যায়।
N =1, উপায়(1) =2 :R, Y
N =2, উপায়(2) =3 :RY, YR, RR
N =3, উপায়(3) =5 :RYR, YRY, RRY, YRR, RRR
N =4, উপায়(4) =8 :YRYR, RYRY, RYRR, YRRY, YRRR, RRYR, RRRR, RRRY।
সুতরাং এই ঘটনাগুলি থেকে, আমরা বের করতে পারি যে এটি একটি ফিবোনাচি সিরিজ যা প্রথম উপাদান হিসাবে 2 এবং দ্বিতীয় হিসাবে 3 দিয়ে শুরু হয়৷
আমাদের যুক্তিবিদ্যার কাজ চিত্রিত করার জন্য প্রোগ্রাম,
উদাহরণ
#includeনেমস্পেস ব্যবহার করে std;int colorSteps(int n) { int first =2; int next =3; জন্য (int i =3; i <=n; i++) { পরবর্তী =প্রথম + পরবর্তী; প্রথম =পরবর্তী - প্রথম; } পরবর্তী রিটার্ন;}int main(){int n =6; cout<<"রঙ করার উপায়গুলির সংখ্যা "< আউটপুট
6 ধাপে রঙ করার উপায়ের সংখ্যা হল 21