Submit | All submissions | Best solutions | Back to list |
BSHEEP - Build the Fence |
At the beginning of spring all the sheep move to the higher pastures in the mountains. If there are thousands of them, it is well worthwhile gathering them together in one place. But sheep don't like to leave their grass-lands. Help the shepherd and build him a fence which would surround all the sheep. The fence should have the smallest possible length! Assume that sheep are negligibly small and that they are not moving. Sometimes a few sheep are standing in the same place. If there is only one sheep, it is probably dying, so no fence is needed at all...
Input
t [the number of tests <= 100]
[empty line]
n [the number of sheep <= 100000]
x1 y1 [coordinates of the first sheep]
...
xn yn
[integer coordinates from -10000 to
10000]
[empty line]
[other lists of sheep]
Text grouped in [ ] does not appear in the input file. Assume that sheep are numbered in the input order.
Output
o [length of circumference, rounded to 2 decimal places]
p1 p2 ... pk
[the sheep that are standing in the corners of the fence; the first one should be positioned bottommost and as far to the left as possible, the others ought to be written in anticlockwise order; ignore all sheep standing in the same place but the first to appear in the input file; the number of sheep should be the smallest possible]
[empty line]
[next solutions]
Example
Input: 8 5 0 0 0 5 10 5 3 3 10 0 1 0 0 3 0 0 1 0 2 0 4 0 0 0 0 0 1 1 0 3 0 0 0 1 1 0 6 0 0 -1 -1 1 1 2 2 3 3 4 4 2 10 0 0 0 7 -3 -4 2 -3 4 3 -4 2 0 5 2 -3 -1 4 Output: 30.00 1 5 3 2 0.00 1 4.00 1 3 3.41 1 4 3 3.41 1 3 2 14.14 2 6 20.00 2 1 26.98 1 2 3 5 4Warning: large Input/Output data, be careful with certain languages
Added by: | mima |
Date: | 2004-06-01 |
Time limit: | 7s |
Source limit: | 50000B |
Memory limit: | 1536MB |
Cluster: | Cube (Intel G860) |
Languages: | All except: NODEJS PERL6 VB.NET |
Resource: | - |
hide comments
|
||||||
2020-09-08 20:51:19 Piotr GliszczyƱski
Did anyone managed to solve it in python ? I had many attempts with optimalistation but always time runs out. [NG]: https://www.spoj.com/ranks/BSHEEP/lang=PYTH%202.7 Last edit: 2020-09-10 01:34:20 |
||||||
2020-06-22 03:19:35
Convex Hull - Monotone Chain - AC |
||||||
2019-10-04 15:22:22
AC in two goes. |
||||||
2018-05-31 15:46:55
ConvexHull GoodOne! |
||||||
2018-02-19 01:23:59
Seems like there is no case where all points are collinear. |
||||||
2016-09-27 06:38:29 [Mayank Pratap]
AC in one Go :) THink Simple. |
||||||
2016-08-18 17:03:50 Sanjit Majumdar
Got accepted in 0.45s using Andrew's monotone chain convex hull algorithm |
||||||
2016-02-01 19:05:15 Sampath Ravolaparthi
Hell No.......!! Kept debugging my algo when I just had to change float to double Forgot to keep the sum In mind and Only assumed for one segment.....!! |
||||||
2016-01-19 19:54:17
Easy question. Absolutely straightforward! AC in 1 go :P |
||||||
2016-01-18 09:34:05 kartikay singh
Easy convo hull :-) Graham scan will be suffice :D Last edit: 2016-01-18 09:34:25 |