ENG  RUSTimus Online Judge
Online Judge
Problems
Authors
Online contests
About Online Judge
Frequently asked questions
Site news
Webboard
Links
Problem set
Submit solution
Judge status
Guide
Register
Update your info
Authors ranklist
Current contest
Scheduled contests
Past contests
Rules
back to board

Discussion of Problem 1983. Nectar Gathering

To admins
I believe there might be some precision issues with the tests. Here is why:

My AC solution (ID = 11182582) has a parameter STEPS set to 1000. As I set it higher, the accuracy increases.

On this input:
54 46 -161
-82 -150 -33
100 127 -175

My AC program gets:
48.217529

But when I set STEPS to 10000, the improved AC program gets:
38.806852

In addition, I have another program (ID 11182578 - WA #22) outputting:
37.855475851615

I believe test #22 is wrong (as well as my AC solution) while my WA #22 solution is in fact correct.

To strenghten that conviction, when I set STEPS to 30000, the improved AC program gets:
38.191302

Thus, the two answers are within a relative error of less than 10^-2.

Please look into this issue.
Thank you!
Tests are weak
After further investigation, I was able to get to the bottom of things:

(1) My (ID 11182578 - WA #22) solution was indeed wrong and I was able to fix it (ID 11197306 - AC).
(2) My (ID 11182582 - AC) solution continues to give a completly different result on the above mentioned test.

Conclusions:
(1) To pass WA #22, I had to handle cases where the origin (0, 0, 0), when projected on the plane containing the triangle, would fall on one of the vertices or on one of the edges of the triangle.

(2) Since both of my AC solutions give widely different results on the above mentioned test it means the tests are weak and at least the above test should be added to the testset. The correct answer is the one returned by my (ID 11182578 - WA #22) and (ID 11197306 - AC) submissions.


For those who look for tests:
Input #1:
10 0 0
10 100 0
10 0 100

Output #1:
4999.748318598260


Input #2:
54 46 -161
-82 -150 -33
100 127 -175

Output #2:
37.855475851615

This is a very nice problem! I learned a lot from solving it. Good luck in your attempt!