इस ट्यूटोरियल में, हम किसी दिए गए स्ट्रिंग में सभी पैलिंड्रोमिक अनुक्रमों की संख्या को खोजने के लिए एक प्रोग्राम पर चर्चा करेंगे।
इसके लिए हमें एक स्ट्रिंग प्रदान की जाएगी। हमारा कार्य उस दिए गए स्ट्रिंग में किए जा सकने वाले पैलिंड्रोमिक अनुक्रमों की संख्या ज्ञात करना है।
उदाहरण
#include<iostream>
#include<cstring>
using namespace std;
//returning total palindromic sequence
int count_palin(string str){
int N = str.length();
//creating a 2D array
int cps[N+1][N+1];
memset(cps, 0 ,sizeof(cps));
for (int i=0; i<N; i++)
cps[i][i] = 1;
for (int L=2; L<=N; L++){
for (int i=0; i<N; i++){
int k = L+i-1;
if (str[i] == str[k])
cps[i][k] = cps[i][k-1] + cps[i+1][k] + 1;
else
cps[i][k] = cps[i][k-1] + cps[i+1][k] - cps[i+1][k-1];
}
}
return cps[0][N-1];
}
int main(){
string str = "abcb";
cout << "Total palindromic subsequence are : " << count_palin(str) << endl;
return 0;
} आउटपुट
Total palindromic subsequence are : 6