From 421a00bec68daf93e63a17e1f22ec77f4355d0ae Mon Sep 17 00:00:00 2001 From: Akshaya <92786416+Aksh2003@users.noreply.github.com> Date: Sun, 22 Oct 2023 00:40:28 +0530 Subject: [PATCH] Palindromic Partitioning Added optimized Dynamic Programming solution for the famous Palindromic Partitioning problem --- Java/Palindromic Partitioning | 67 +++++++++++++++++++++++++++++++++++ 1 file changed, 67 insertions(+) create mode 100644 Java/Palindromic Partitioning diff --git a/Java/Palindromic Partitioning b/Java/Palindromic Partitioning new file mode 100644 index 0000000..e678f65 --- /dev/null +++ b/Java/Palindromic Partitioning @@ -0,0 +1,67 @@ +//{ Driver Code Starts +//Initial Template for Java + +import java.io.*; +import java.util.*; + +class GFG{ + public static void main(String args[])throws IOException + { + BufferedReader in = new BufferedReader(new InputStreamReader(System.in)); + int t = Integer.parseInt(in.readLine()); + while(t-- > 0){ + String str = in.readLine(); + Solution ob = new Solution(); + System.out.println(ob.palindromicPartition(str)); + } + } +} +// } Driver Code Ends + + +//User function Template for Java + +class Solution{ + public static boolean isPalindrome(String s,int i,int j) + { + int st = i; + int e = j; + while(st < e) + { + if(s.charAt(st) != s.charAt(e)) + { + return false; + } + st++; + e--; + } + return true; + } + static int palindromicPartition(String s) + { + int n = s.length(); + int dp[][] = new int[n][n]; + for(int i=0;i=0;i--) + { + for(int j = i+1;j