Posts

Showing posts from October, 2025

Prefix Sum IX

Image
Classic prefix sum to accomplish a linear time solution, with a linear space usage too. Execution time is ~0ms according to LC. Code is down below, cheers, ACC. Equal Score Substrings - LeetCode You are given a string  s  consisting of lowercase English letters. The  score  of a string is the sum of the positions of its characters in the alphabet, where  'a' = 1 ,  'b' = 2 , ...,  'z' = 26 . Determine whether there exists an index  i  such that the string can be split into two  non-empty   substrings   s[0..i]  and  s[(i + 1)..(n - 1)]  that have  equal  scores. Return  true  if such a split exists, otherwise return  false .   Example 1: Input:   s = "adcb" Output:   true Explanation: Split at index  i = 1 : Left substring =  s[0..1] = "ad"  with  score = 1 + 4 = 5 Right substring =  s[2..3] = "cb"  with  score = 3 + 2 = 5 Both substrings ...

Don't be ashamed of N^2 IV

Image
If you look at the constraints for this problem, the length of the string is 1000. You can solve it in N^2 with a constant of 26, which means O(26N^2) which would mean 26,000,000 steps. That's totally feasible and you shouldn't be ashamed if it gets the job done - and fast enough. Code is down below, cheers, ACC. Longest Balanced Substring I - LeetCode You are given a string  s  consisting of lowercase English letters. A  substring  of  s  is called  balanced  if all  distinct  characters in the  substring  appear the  same  number of times. Return the  length  of the  longest balanced substring  of  s .   Example 1: Input:   s = "abbac" Output:   4 Explanation: The longest balanced substring is  "abba"  because both distinct characters  'a'  and  'b'  each appear exactly 2 times. Example 2: Input:   s = "zzabccy" Output:   4 Explanation: ...