Any optimizied method other than O(n^2)

Can this question be optimized in any way perhaps sliding window (?) rather than using a nested loop to check every substring?

hi @yaheyafarooqui_8319591c036ff6e9
According to the Problem the work is to find the Max CB numbers from the given number.

•As to work on substrings of the given number, we will capture the element into the String instead of integer .
•The number ‘n’ given is nothing to do with our approach(as we are working on String) but can be useful acoording to your approach.

Intuition :
•Put loop on string that will give substring of every length.
•create a function that will return true if the passed number is a CB number otherwise return false.
•To put a check if the digit is already a part of the any other CB number, create an boolean array say, valid which store which digits till now has been a part of any other CB number.
•Take a counter and increment if a CB number is found.
•At the end print the count.
refer this code ->

@yaheyafarooqui_8319591c036ff6e9
Is there anything else??

I hope I’ve cleared your doubt. I ask you to please rate your experience here
Your feedback is very important. It helps us improve our platform and hence provide you
the learning experience you deserve.

On the off chance, you still have some questions or not find the answers satisfactory, you may reopen
the doubt.

I meant n as the length of string. is there a way to not check every substring and do this in a single traversal?

@yaheyafarooqui_8319591c036ff6e9,
Since the length of string in constraint is given less than 18 so actually u don’t need to worry even if u come up with o(n3) approach

These constrain actually help u to think the kind of optimization required in your code

1 Like

I hope I’ve cleared your doubt. I ask you to please rate your experience here
Your feedback is very important. It helps us improve our platform and hence provide you
the learning experience you deserve.

On the off chance, you still have some questions or not find the answers satisfactory, you may reopen
the doubt.