# [Community Puzzle] Connect the Hyper-Dots

https://www.codingame.com/training/medium/connect-the-hyper-dots

Created by @davilla,validated by @Alex-1,@Jumpmaster and @EliteDaMyth.
If you have any issues, feel free to ping them.

@davilla Can you explain the following? I dont see any test case named â€ścriss-crossâ€ť.

â€śSome points labeled with punctuation will have a zero coordinate. In the tests, the hyphen in criss-cross is an example. A zero coordinate is not considered crossing the axis. Thus, do not add a space except when entering a new orthant from previous.â€ť

For the below test case why the output is â€śGreat!â€ť and not â€śGrea!tâ€ť? Please explain.

6 2
a 4 7
e 5 6
G 5 2
r 4 4
t 3 10
! 0 9

Cause sqrt(20) > sqrt(10).
Distance is from the previous point (â€śaâ€ť here), not from the starting point.

And basically thereâ€™s an orthant change when at least one coordinate goes from < 0 to > 0 or vice versa.

1 Like

Thereâ€™s a test called Hyphenation, and criss-cross appears 2 tests below that.

Edit: After a reorder, it now appears in the next test after Hyphenation.

Hi @davilla.
I liked your puzzle but I have some troubles with the validator test 12.
I have no idea why, is there something special in this test that I could have missed ?

EDIT : found the solution, itâ€™s beacause in test 12 there is negatives coordonates then equal to 0. In IDE tests there is only the case with positives coordinates then equal to 0.

2 Likes

Thank you for coming back with an update. I will change the test cases to include this as well.

Hi @davilla, I am having some trouble with the validator 10 of your puzzle as it represent an edge case never seen in the tests.
And in general with the crossing rule. I think the test cases are missing some edge cases. So far I have successfully passed 100% of the test cases with 3 different interpretation of the crossing rule ( I knew they were not good, just wanted to test for edge cases). I donâ€™t know if its possible to change the test cases now, but I suggest you to add a difficult test with multiple 0 coordinates crossings in series (the first one canceling the second, I donâ€™t know if Iâ€™m clear)

The crossing rule is meant to be an add-on to make the puzzle a little more interesting. It had to be scaled back some because it had turned into a head-banger. As far as Iâ€™m concerned, if youâ€™re passing all the tests, then you should be passing the validators, and Iâ€™d want to simplify #10 to ensure it. Would you be able to share your code with me directly, whichever version failed that? And I will be happy to share why it failed, if you are interested, and what would have had to change.

Soâ€¦ Turns out I made a dumb mistake that only appeared in validator 10 ( so I thought it was an edge case). Iâ€™m still a bit confused about this crossing line thingy but it might be just me. I have two version of my code that both have 100% now so this edge case I was referring to does not exist in the puzzle!
What confuses me is when you cross one line while standing on another line, its an in-between state where you could technically be in two orthants. But I think itâ€™s just in my head.

There are definitely unusual scenarios which arise from edge cases not tested, and different valid interpretations for them. For instance, you could have a point with a zero coordinate which is clearly not adjacent to the previous orthant (due to sign change on a different coordinate), but whose new orthant would not be clearly defined. These scenarios are avoided, and the description kind of high-level, so as not to get bogged down in the detail of it, and keep the focus of the problem on nearest distance.

@davilla Iâ€™m having troubles with the case #10. I think itâ€™s because of me not understanding everything properly - even if Iâ€™m trying to solve it on paper I get the same result as my program (criss-cross,asuce apple instead of criss-cross, apple sauce).

EDIT: I figured it out

That was relaxing. Nice to have a Puzzle of the Week that isnâ€™t hard/very hard.