You are very welcome, I am really happy to read this kind of feedback. Impementing graphic solvable puzzles provides new approaches to collaborate with the coding game ecosystem. This is anyway a lot of work to make it working and stable, coding the cat behavior is also very challenging !! I will give a big thanks to my daugther who did provide the cute graphics for the scene around the swimmimg pool.
In the English puzzleās description for āEscaping the catā, the french word āContraintesā wasnāt translated.
I congratulate your āart directorā, her contribution enhanced the user experience greatly!
I liked the puzzle itself as well, though the narrow margin for error in some test cases made it a bit challenging.
Well that challenged me quite a lot to be honest
But great idea!
I made the mouse swim in a circle of a radius where I could outrun the cat and make it to the pool edge first if the angle between the cat and the mouse was at itās maximum.
So Iāve calculated the angle in each turn. A problem was that Iāve never saw an angle bigger than 175Ā°. So Iāve stopped at 175Ā° and skewed my escape route by another 5Ā° That made my mouse escape from the cat.
Can anybody help me? I canāt pass the final test. Iāve implemented a system of cardinal points, every time the cat moves I test the distance between it and the mouse. If itās too close I send the mouse the other way around, but I canāt get fast enough onthe border, even with the cat a diameter far.
Does any of the previous discussion here help you?
Igolusā link was a huge help in understanding a solution.
That said I got tired of trying to get the math to work and had my mouse zig zag for a bit, gaining distance the whole time. It forced the cat to keep changing direction, buying the mouse time until it couldnāt outpace the catās angle and made a rush to the edge (which itself could have been more efficient. I just have it go straight in a given cardinal direction instead of at some angle).
The last one is very tight and will make you need to be pretty efficient. I had to make an adjustment to my code specifically for how tight that one got.
Loved this puzzle. But I think Iāll go back and solve it as intended too. Thereās a lot to think about and plenty of math to figure.
how did you calculate the arclenght without knowing wich points are in the circle of the pool?
Whatās the cat speed on āFurious catā validator ? Cuz I pass it on IDE Test but not on validator I have no idea whatās going wrong
Hello,
The speed is the same for all validators, only intial positions of cat and mouse are changed.
The cat speed on āFurious catā validator is the same as on āFurious catā testcase (39).
To be sure you can add the cat speed to your output to be displayed in replays (located in Results ā Details) as stated in the Output section of the puzzle description.
Example in python 3: print(f"0 0 Speed: {cat_speed}")
The code of the reteree can be find at: GitHub - igolus/escapingTheCat: escapingTheCat codingame, Complex number approach could help somehowā¦
Finally made it thanks to the video! Really like the explanations, and the approach which is totally counter intuitive indeed!
Was stuck for ages at 75%, missing the last test case. I had to completely rewrite my code following the video. Very interesting problem. Thanks again for the video, without it I surely wouldnāt have been able to solve the puzzle (kind of hard, I found).
Cheers
You might get a timeout if you donāt print out anything. Make sure that in any case your code has a print.
I found a bug. The mouse got out of the pool but I still got the āLOSER!ā message.
Wow. Tell us which test or validator it is?
Same problem was with me, Your solution for this is to the point, Thanks a lot
I canāt even solve the first one but I just started coding
The previous discussion here may help you. But this puzzle can be difficult for a beginner, and you may consider switching to an easier puzzle first before coming back for another attempt at this one.
interesting, i go center and after i move using the angle between my mouse and the cat. and use un delta with the cat_speed for the angle if the angle is big or little.