Ad
  • Custom User Avatar

    Strictly speaking, the time complexity of 'stop at 5' would be:

    O(min(N, f(k))) where f(k) is the number of elements needed to inspect for the given inputs (implying 5 <= f(k) <= N). This means the 'stop at 5' solution is better in all cases except the worst case.

    The overhead of checking the count is practically nothing and I struggle to think of a scenario (extremely small dictionaries?) where it isn't worth it to keep the count and stop.

  • Custom User Avatar

    You don't even need the list(input_), it can just be input_ because strings already behave the same as lists!

  • Custom User Avatar

    Imo;

    O(N) vs O(N) - in worst case where autocomplete words are at the end of the list, runtime is same for both.

    Ω(N) vs Ω(1) - in the best case where the autocomplete words are at the start of the list, it may be worth it to stop looping when we have found 5.

  • Custom User Avatar

    Is it? O(n) versus O(1)? Not?

  • Custom User Avatar

    undocumented issues are not issues. :p

  • Custom User Avatar

    Yes, I realized my mistake, thank you very much. It was necessary to learn more about the peculiarities of the language. 100 iterations, it's so joke, forgot to rewrite)

  • Custom User Avatar

    What language, what error? Impossible to help you with so little information.
    There is no error, your code mutates the original list. Read about it.
    Some solutions present in Solutions section aren't invalidated (don't know why) but were valid when input mutation wasn't tested.

  • Custom User Avatar

    this kata has a error and I saw solutions, I went back to try agin error