Leetcode 2405 Optimal Partition of String Solution in Java | Hindi Coding Community

0

 



Given a string s, partition the string into one or more substrings such that the characters in each substring are unique. That is, no letter appears in a single substring more than once.

Return the minimum number of substrings in such a partition.

Note that each character should belong to exactly one substring in a partition.

 

Example 1:

Input: s = "abacaba"
Output: 4
Explanation:
Two possible partitions are ("a","ba","cab","a") and ("ab","a","ca","ba").
It can be shown that 4 is the minimum number of substrings needed.

Example 2:

Input: s = "ssssss"
Output: 6
Explanation:
The only valid partition is ("s","s","s","s","s","s").

 

Constraints:

  • 1 <= s.length <= 105
  • s consists of only English lowercase letters.

Java Code :



class Solution {
public int partitionString(String s) {
int ans = 1;
HashSet<Character> st = new HashSet<>();
for(int i=0;i<s.length();i++){
if(!st.contains(s.charAt(i))){
st.add(s.charAt(i));
}
else{
ans++;
st.clear();
st.add(s.charAt(i));
}
}
return ans;
}
}


Post a Comment

0Comments
Post a Comment (0)

#buttons=(Accept !) #days=(20)

Our website uses cookies to enhance your experience. Learn More
Accept !