Write a Java Program to find the count of the Palindromic Subsequence in the user Entered String.
Program:
import java.io.*;
import java.util.*;
public class Main {
public static void main(String[] args) throws Exception {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
System.out.print("Enter a string: ");
String strng = br.readLine();
int[][] matrx = new int[strng.length()][strng.length()];
for (int g = 0; g < matrx.length; g++) {
for (int i = 0, j = g; j < matrx[0].length; i++, j++) {
if (g == 0) {
matrx[i][j] = 1;
} else if (g == 1) {
matrx[i][j] = strng.charAt(i) == strng.charAt(j) ? 3 : 2;
} else {
if (strng.charAt(i) == strng.charAt(j)) {
matrx[i][j] = matrx[i + 1][j] + matrx[i][j - 1] + 1;
} else {
matrx[i][j] = matrx[i + 1][j] + matrx[i][j - 1] - matrx[i + 1][j - 1];
}
}
}
}
System.out.println(matrx[0][matrx[0].length - 1]);
}
}
Step by step
Solved in 2 steps with 2 images