Loading collection data...
Collections are a way for you to organize kata so that you can create your own training routines. Every collection you create is public and automatically sharable with other warriors. After you have added a few kata to a collection you and others can train on the kata contained within the collection.
Get started now by creating a new collection.
It might help, but notice that your soltion still crashes in one of ~five runs. Apparently, mutating the array only emphasized some other bug sitting somewhere there.
Additionally, in some cases your call to
is_pair(*start, *(start + 1))
seems to read past the end of the arr.The cause of your problem is the fact that your code mutates
arr
, and the changes you make to it destroy the data which is later used by tests to verify your result. Unfortunately, for some reason beyond my understanding, the solution function accepts the input as a non-const reference, and any mutation turns out to be destructive. You can resolve your issue by either making a copy ofarr
in your solution, or changing the function signature to acceptarr
by value or by const reference.I will fix the setup of the challenge and change the function signature some time soon, but I cannot give any ETA for that.
But isn't it more logical to cancel out everything even if it's not directly opposite? If 'NORTH, WEST, SOUTH, EAST' brings you to the same spot, why does tha kata request to not remove anything (because it's not directly opposite)? I'm just curious, as if I was to build a similar function in the future, I would do it my way
It makes perfect sense, if you don't start making up your own rules. You need to follow the rules of the kata, not what you believe. "distance", as you desribe it, is irrelevant here.
What update would you suggest? Because the description tells you MULTIPLE times about this quality to the kata task.
Going to one direction and coming back the opposite direction
right awayis a needless effort.
You can immediately see that going "NORTH" and
immediately"SOUTH" is not reasonable, better stay to the same place!
"NORTH" and "WEST", "WEST" and "SOUTH", "SOUTH" and "EAST" are not
directly oppositeof each other and can't (be reduced).
And for that matter very test case we're talking about is literally discussed directly in the
Notes
section.You misunderstand the task.
The correct answer to the
Fixed Test
you showed is{"NORTH","WEST","SOUTH","EAST"}
, because there are no consecutive opposite directions to reduce.The "sample tests" block of the "Attempt" contain more assertions than those of the "Test", this is why you pass the latter but not the former.
Your code throws an error when
ending
is longer thanstr
.Please, do not raise issues to ask for help; a bug in your code is not a kata issue; you can ask questions instead. When you post your code, don't forget to add the spoiler flag and to format with Markdown
Sorry, no error in the tests. Kata passed by 85,171 people...