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

C++-এ স্ট্রিংয়ে সব প্যালিনড্রোম সাব-স্ট্রিং গণনা


এই টিউটোরিয়ালে আমরা একটি স্ট্রিং-এ প্যালিনড্রোম সাব-স্ট্রিং-এর সংখ্যা বের করার প্রোগ্রাম নিয়ে আলোচনা করব।

এই জন্য আমাদের একটি স্ট্রিং দেওয়া থাকবে। আমাদের কাজ হলো দেয়া স্ট্রিং-এ দৈর্ঘ্য ৩-এর চেয়ে বড় প্যালিনড্রোম সাব-স্ট্রিং-এর সংখ্যা গণনা করা।

উদাহরণ

#include<bits/stdc++.h> using namespace std; //counting palindrome strings int count_pstr(char str[], int n){    int dp[n][n];    memset(dp, 0, sizeof(dp));    bool P[n][n];    memset(P, false , sizeof(P));    for (int i= 0; i< n; i++)       P[i][i] = true;    for (int i=0; i<n-1; i++) {       if (str[i] == str[i+1]) {          P[i][i+1] = true;          dp[i][i+1] = 1 ;       }    }    for (int gap=2 ; gap<n; gap++) {       for (int i=0; i<n-gap; i++) {          int j = gap + i;          //if current string is palindrome          if (str[i] == str[j] && P[i+1][j-1] )             P[i][j] = true;          if (P[i][j] == true)             dp[i][j] = dp[i][j-1] + dp[i+1][j] + 1 - dp[i+1][j-1];          else             dp[i][j] = dp[i][j-1] + dp[i+1][j] - dp[i+1][j-1];       }    }    return dp[0][n-1]; } int main(){    char str[] = "abaab";    int n = strlen(str);    cout << count_pstr(str, n) << endl;    return 0; }

আউটপুট

3

  1. C++-এ দেওয়া স্ট্রিং থেকে নির্দিষ্ট দৈর্ঘ্যের সাবস্ট্রিং সংখ্যা গণনা

  2. C++-এ বাক্যে প্যালিনড্রোম শব্দ সংখ্যা গণনা

  3. C++-এ স্ট্রিং-এ বিশেষ প্যালিনড্রোম সাবস্ট্রিং গণনা

  4. C++-এ সমতল তলে পারালেলোগ্রাম গণনা: মিডপয়েন্ট পদ্ধতি