ধরুন আমাদের একটি অ-ঋণাত্মক সূচক k যেখানে k ≤ 33, আমাদের প্যাসকেলের ত্রিভুজের kth সূচক সারিটি খুঁজে বের করতে হবে৷
সুতরাং, যদি ইনপুট 3 এর মত হয়, তাহলে আউটপুট হবে [1,3,3,1]
এটি সমাধান করতে, আমরা এই পদক্ষেপগুলি অনুসরণ করব -
-
rowIndex + 1 আকারের একটি অ্যারে প্যাসকেল সংজ্ঞায়িত করুন এবং এটি 0
দিয়ে পূরণ করুন -
আরম্ভ করার জন্য r :=0, যখন r <=rowIndex, আপডেট করুন (r 1 দ্বারা বৃদ্ধি করুন), করুন −
-
pascal[r] :=1, আগের :=1
-
আরম্ভ করার জন্য i :=1, যখন i
-
cur :=প্যাসকেল[i]
-
pascal[i] :=pascal[i] + prev
-
পূর্ববর্তী :=cur
-
-
-
রিটার্ন প্যাসকেল
উদাহরণ
আরো ভালোভাবে বোঝার জন্য আসুন নিচের বাস্তবায়ন দেখি -
#include <bits/stdc++.h>
using namespace std;
void print_vector(vector<auto> v){
cout << "[";
for(int i = 0; i<v.size(); i++){
cout << v[i] << ", ";
}
cout << "]"<<endl;
}
class Solution {
public:
vector<int> getRow(int rowIndex) {
vector<int> pascal(rowIndex + 1, 0);
int prev, cur, r, i;
for (r = 0; r <= rowIndex; r++) {
pascal[r] = prev = 1;
for (i = 1; i < r; i++) {
cur = pascal[i];
pascal[i] += prev;
prev = cur;
}
}
return pascal;
}
};
main(){
Solution ob;
print_vector(ob.getRow(3));
} ইনপুট
3
আউটপুট
[1, 3, 3, 1, ]