3 ms·
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 agre
by chrisandchris 6y ago
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
- d0mine 6y agoYes, 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=itertools#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
- chrisandchris 6y agoOk, thanks. I don‘t speak enough python to understand that it solves the issue.