News for hackers. Stuff that matters.
Re:Most candidates cannot solve this interview problem by d0mine on Sunday February 07, 2021 @06:08AM (#26054172)
If most candidates cannot solve it in 25 minutes (while being a simple task), then it is a valid test

    [(c, sum(1 for _ in same)) for c, same in itertools.groupby(s)]
Re:Most candidates cannot solve this interview problem by chrisandchris on Sunday February 07, 2021 @06:22AM (#26054243)
Does this a actually solve it? It should only sum when the character next to is the same as the previous. a is counted twice: ([a, 3], ... [a, 1])

While I agree that such interview questions are bad, they also give the interviewer a view on how the interviewee attempts to solve a problem.

Edit: typo

Re:Most candidates cannot solve this interview problem by d0mine on Sunday February 07, 2021 @06:50AM (#26054398)
Yes, it does solve it. It produces the expected output (`a` should occur twice)

Here's solution that doesn't use itertools.groupby() https://docs.python.org/3/library/itertools.html?highlight=i... :

    result = []
    prev, count = None, 0
    for c in s+"\0":  # note: assuming "\0" can't be in `s`
        if c != prev: # starting new sequence
           if count:  # save count for old sequence
              result.append((prev, count))
           prev, count = c, 1  # reset count
        else: # continuation of old sequence
           count += 1
Re:Most candidates cannot solve this interview problem by chrisandchris on Sunday February 07, 2021 @02:36PM (#26057506)
Ok, thanks. I don‘t speak enough python to understand that it solves the issue.
Re:Most candidates cannot solve this interview problem by d0mine on Sunday February 07, 2021 @10:16AM (#26055559)
Please do comment if you downvote a correct solution.