কম্পিউটার টিউটোরিয়াল

C++-এ প্যাসক্যালস ট্রায়্যাঙ্গেল II (Pascal's Triangle II)


একটি নন-নেগেটিভ ইন্ডেক্স k (k <= 33) দেওয়া আছে। প্যাসক্যালস ট্রায়্যাঙ্গেলের k-তম সারি বের করুন।

উদাহরণ: k=3 -> [1,3,3,1]।

সমাধানের ধাপসমূহ

  • আকার rowIndex+1 এর pascal অ্যারে 0 দিয়ে আরম্ভ করুন।
  • r = 0 থেকে rowIndex পর্যন্ত:
    • pascal[r] = prev = 1।
    • i = 1 থেকে r-1 পর্যন্ত: cur = pascal[i]; pascal[i] += prev; prev = cur।
  • pascal রিটার্ন করুন।

C++ কোড উদাহরণ

#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;
    }
};

int main() {
    Solution ob;
    print_vector(ob.getRow(3));
    return 0;
}

ইনপুট

3

আউটপুট

[1, 3, 3, 1, ]
  1. সি++-এ ত্রিভুজের পেরিমিটার (Perimeter) বের করা

  2. সি++-এ ত্রিভুজের কেন্ড্রয়েড (Centroid) বের করার প্রোগ্রাম

  3. প্যারালেলোগ্রামের ভিতরে ত্রিভুজের ক্ষেত্রফল C++-এ

  4. পাইথনে প্যাসক্যালের ট্রায়্যাঙ্গেল জেনারেট করার প্রোগ্রাম