Ad
  • Custom User Avatar

    This comment is hidden because it contains spoiler information about the solution

  • Custom User Avatar

    No it's not. You are working with recursion on a global variable. This goes against the basic idea of functional and recursive programming. The idea is to work with values and not with global objects and create side effects.

  • Custom User Avatar

    A couple of things.

    1. You do not need else, if you return in after your if statement.
    2. Always use === for tests of equality in JavaScript.
    3. You can do that in a recursive way. The bigger the array, the bigger the call stack gets. I would definetly check what happens to the array and if only the reference is pushed to the stack, but it is generally not the idea of recursion to work with reference objects.
  • Custom User Avatar

    'Harder to read' is a very subjective category. I can't stand reading loops, because they don't tell me what the problem was. There is only the solution. With higher level methods there is a problem description there. If you throw in decent variable names, this is not more complicated to read (aka understand) than 'traditional' loops.

  • Custom User Avatar

    I very much like the class and the way to calculate the weight. Kudos!

  • Custom User Avatar

    This comment is hidden because it contains spoiler information about the solution

  • Custom User Avatar

    Only in computer science there is no debate about 0 being positive. If you consider a number n to be positive if and only if n > 0, then it makes perfect sense. You do not check for the 0 then. The array [0] then contains a negative element for each positive element.

  • Custom User Avatar

    It should be "How did you find out...?" I did not found your secret...

  • Custom User Avatar

    I do have the same problem. Timeout after 10 seconds. Next thing I do: Generate a long list for 7 and 3, hardcode them in the solution and let's see what happens then.

  • Custom User Avatar

    The method "private static List reverse(List elements)" is not side effect free. The parameter elements will be changed. If you would change the name to "reverseInPlace" and not return anything that could avoid trouble (in bigger projects/code basis). Then again you could just use Collections.reverse()...

    Other than that, it is a nice solution.