From 230dc5974e38a54e87ececb7c5a3677c26de073b Mon Sep 17 00:00:00 2001 From: Tanmay-312 Date: Fri, 5 Apr 2024 07:59:02 +0530 Subject: [PATCH] Added codes for 5 April --- GeeksForGeeks/April/05-4-24/GFG.java | 57 +++++++++++++++++++++++++++ GeeksForGeeks/April/05-4-24/README.md | 2 + LeetCode/April/05-4-24/README.md | 2 + LeetCode/April/05-4-24/Solution.java | 20 ++++++++++ 4 files changed, 81 insertions(+) create mode 100644 GeeksForGeeks/April/05-4-24/GFG.java create mode 100644 GeeksForGeeks/April/05-4-24/README.md create mode 100644 LeetCode/April/05-4-24/README.md create mode 100644 LeetCode/April/05-4-24/Solution.java diff --git a/GeeksForGeeks/April/05-4-24/GFG.java b/GeeksForGeeks/April/05-4-24/GFG.java new file mode 100644 index 0000000..0b1c1c4 --- /dev/null +++ b/GeeksForGeeks/April/05-4-24/GFG.java @@ -0,0 +1,57 @@ +//{ Driver Code Starts +//Initial Template for Java + +import java.util.*; +import java.lang.*; +import java.io.*; +class GFG +{ + public static void main(String[] args) throws IOException + { + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + int T = Integer.parseInt(br.readLine().trim()); + while(T-->0) + { + int n = Integer.parseInt(br.readLine().trim()); + String s = br.readLine().trim(); + String[] s1 = s.split(" "); + int[] nums = new int[n]; + for(int i = 0; i < n; i++) + nums[i] = Integer.parseInt(s1[i]); + Solution ob = new Solution(); + long ans = ob.min_operations(nums); + System.out.println(ans); + } + } +} + +// } Driver Code Ends + + +//User function Template for Java + +class Solution +{ + public int min_operations(int []nums) + { + // Code here + int n = nums.length; + int dp[] = new int[n]; + Arrays.fill(dp,1); + int maxi = 1; + + for(int i = 1;i < n;i++) + { + for(int j = 0;j < i;j++) + { + if(nums[i]-nums[j]>=i-j) + { + dp[i] = Math.max(dp[i],dp[j]+1); + maxi = Math.max(maxi,dp[i]); + } + } + } + + return n-maxi; + } +} diff --git a/GeeksForGeeks/April/05-4-24/README.md b/GeeksForGeeks/April/05-4-24/README.md new file mode 100644 index 0000000..b0ea7a8 --- /dev/null +++ b/GeeksForGeeks/April/05-4-24/README.md @@ -0,0 +1,2 @@ +Time complexity - O(n^2) +Space complexity - O(n) diff --git a/LeetCode/April/05-4-24/README.md b/LeetCode/April/05-4-24/README.md new file mode 100644 index 0000000..7384c4b --- /dev/null +++ b/LeetCode/April/05-4-24/README.md @@ -0,0 +1,2 @@ +Time complexity - O(n) +Space complexity - O(n) diff --git a/LeetCode/April/05-4-24/Solution.java b/LeetCode/April/05-4-24/Solution.java new file mode 100644 index 0000000..c52004a --- /dev/null +++ b/LeetCode/April/05-4-24/Solution.java @@ -0,0 +1,20 @@ +class Solution +{ + public String makeGood(String s) + { + StringBuilder sb = new StringBuilder(); + + for (char c : s.toCharArray()) + if (sb.length() > 0 && isBadPair(sb.charAt(sb.length() - 1), c)) + sb.deleteCharAt(sb.length() - 1); + else + sb.append(c); + + return sb.toString(); + } + + private boolean isBadPair(char a, char b) + { + return a != b && Character.toLowerCase(a) == Character.toLowerCase(b); + } +}