(Just a fair warning, this will be a angry rant. But I really feel like that’s apt in this case.)
(Also, note that this finding very likely means that it is literally impossible to get a non-zero score in this challenge with the current data)
Through quite a few submissions checking the range of stuff I now know that t seems fine. Both Y and Z however are always zero!!! Not only that, both are exactly the string
0.000000 which is exactly the standard float format for 0 in
printf. This can only occur if
printf is called with the float 0, or if something like an int is given to
printf to format as a float. I predict that int is used internally for accuracy and then something like
printf("%d %f %f ", t, y/LARGE_FACTOR, z/LARGE_FACTOR); is in the code so that ints are sent to
printf to be formatted as float.
How the actual fuck has no-one on the team responsible for this challenge not realized that all the cases generated have
Z == Y == "0.000000"? Just looking at the generated data for a split second would raise immediate concerns. How can you say the issue was fixed when the data is this obviously wrong? Have you run any single check? Does it really take a contestant essentially doing black box debugging to find the error the people with the actual source code can’t find? This is absurd.
Both these code snippets runs and does not get NZEC (the division by zero is not encountered):
t = 5 for _ in range(t): n = int(input()) for _ in range(n): t,y,z = input().split() t = int(t) y = float(y) if z != '0.000000': 1/0 print(0) t = 5 for _ in range(t): n = int(input()) for _ in range(n): t,y,z = input().split() t = int(t) if y != '0.000000': 1/0 print(0)