• 0 Posts
  • 3 Comments
Joined 2 years ago
cake
Cake day: July 4th, 2023

help-circle
  • Genie in the OP image would’ve said “OK you now have 0 wishes”.

    Since he said 255, my interpretation is a valid solution.

    Of course, if we’re talking hypothetical wish gaining prevention methods, I’d just have a check before,

    previous_wishes = wishes;

    {Do all the wish things. wishes ends up with a 255 because of our shenanigans}

    If(wishes>=previous_wishes) wishes = previous_wishes-1;

    ;If the current number of wishes isnt less than the old number of wishes, set it to the old number and subtract 1

    If(wishes==0) {/*TODO: write function to end wish giving sequence*/}


  • Nah theres just no process for undoing your submission.

    It doesn’t matter when it’s decremented if you can’t interrupt the process, anyway.

    In a code sense we pause for input, feed it to the wishmaker function, and pause until the thread returns, then decrement.

    We could decrement first, also, but neither violates the rules.


  • You’re correct but you have an off by 1 error.

    First, the genie grants the wish.

    NumWishes=0;

    Then, having completed the wish, the genie deducts that wish from the remaining wishes.

    NumWishes–;

    And to complete the thought,

    Lastly, the genie checks if the lampholder is out of wishes

    If(NumWishes==0) {…}

    (255==0) evaluates to False, so we fall past that check.