Problem Statement
Paco collects penguins. His penguins like to play and run around on the ice where he lives. In order to keep his penguins safe he decided to construct a single fence enclosure to keep danger out.
Paco's penguins have fallen asleep. Acting quickly Paco placed numPosts posts in a circular configuration on the ice. Each post is placed radius meters from location (0,0). The posts are equally spaced with the first post being placed at location (radius, 0).
To construct the fencing, Paco will connect some pairs of fence posts using straight fences. No two segments of the fence are allowed to cross. In the resulting fencing, each fence post will either be unused, or it will be connected to exactly two other fence posts. In order to minimize the damage his penguins cause to the ice, he would like to minimize the area enclosed by the fence.
In order to keep all his penguins happy Paco would like to have all his penguins in the one single enclosure. Two penguins are in the same enclosure if it is possible to walk from one penguin to the other without crossing a fence.
You are given two
Definition
- Class:
- FencingPenguinsEasy
- Method:
- calculateMinArea
- Parameters:
- int, int, int[], int[]
- Returns:
- double
- Method signature:
- double calculateMinArea(int numPosts, int radius, int[] x, int[] y)
- (be sure your method is public)
Constraints
- numPosts will be between 3 and 222, inclusive.
- radius will be between 5 and 100,000, inclusive.
- x will contain between 1 and 50 elements, inclusive.
- y will contain the same number of elements as x.
- Each element in x will be between -100,000 and 100,000, inclusive.
- Each element in y will be between -100,000 and 100,000, inclusive.
- No penguin will come within 10^-6 of any potential fencing.
- No two penguins will occupy the same location.
Examples
3
5
{-1}
{0}
Returns: 32.47595264191645
There is only one possible enclosure that uses all three fence posts.
30
5
{6}
{0}
Returns: -1.0
4
5
{2}
{1}
Returns: 25.0
If the posts are numbered starting from 0 at (radius, 0) and increasing in the counter-clockwise direction. The resulting possible answers would be: (0,1,2) (0,1,3) Both enclosures cover the same area.
4
5
{2,-2}
{1,-1}
Returns: 50.0
222
100000
{99922}
{2131}
Returns: 339913.95700621605
222
9944
{2}
{1}
Returns: 2798279.8324775733
222
100000
{2}
{1}
Returns: 2.82988580831172E8
221
100000
{-1}
{0}
Returns: 2.842830900932188E8
3
5
{0}
{0}
Returns: 32.47595264191645
5
5
{0}
{0}
Returns: 26.582837761001244
221
100000
{0}
{0}
Returns: 2.842830900932188E8
221
100000
{99999,-99999,0,0}
{0,0,99999,-99999}
Returns: -1.0
221
100000
{9999,-9999,0,0}
{0,0,9999,-9999}
Returns: 3.0956476991920624E9
221
100000
{90000,-90000,0,0}
{0,0,90000,-90000}
Returns: 1.9732351952117462E10
221
100000
{-98000,98000,0,0}
{0,0,98000,-98000}
Returns: 1.9998484473052315E10
221
99999
{-98000,98000,0,0,-100000}
{0,0,98000,-98000,0}
Returns: -1.0
19
98367
{-8265, 33827, 22093}
{-2391, -13761, -31460}
Returns: 6.070545058452121E9
162
12230
{5344, 5788, 1973, 1018, -1553, 3484, -5129, -2216, 940, 1801, -1515, 3273, 5678, 1143, -4650, -2839, -2328, 2698, -5220, 4774, 4397, -2539, -6049, -5702, -1126, 5551, 5880}
{-4133, -1842, 5834, -4293, -5267, -280, 186, -2891, -3349, -3143, -5447, 4932, -356, -1861, -1390, -2185, -4323, 5151, -5317, -3800, -4611, 4475, 1449, -5188, 1545, 1326, -5047}
Returns: 1.912597522949534E8
62
76332
{-19811, -5239, 29764, -22632, 14628, 24051, -19423, -25746}
{-22484, 5586, -7865, -1963, 2032, 16305, -25352, 23249}
Returns: 5.6936546756275425E9
59
79871
{-29647, 30233, -5090, 33338, 6178, -6214, 27001, 19305, -12742, -29792, 17370, 21796, 13941, -22865, -31145, -23293, -25356, -26413, -33189, -18780, -15101, 4464, 31618}
{11596, 28585, -33146, 34590, -31162, -29242, -19087, -34814, -22129, 38550, -30622, 8060, -25882, -3541, 20758, 17225, -14755, -18400, -2214, -12901, 34229, 12534, -27397}
Returns: 8.087840884929476E9
186
47714
{-11493, -11393, -1025, 21524, 23196, -17707, 2678, -13551, 7620, -19205, -8372, -14149, 15650, -17573, 20285, -7000, 16509, -4411, 11517, -11323, 4919, -14512}
{-22682, 8076, -3077, -14192, 2570, 21226, -4764, -14191, -15193, 8010, -22370, 23087, 11968, -2186, -22217, -20873, -2922, -13626, -8389, 780, -19675, -1514}
Returns: 2.734315689082299E9
191
27923
{-9512, 3027, 12034, -2144, -51, 13281, -8256, 4926, 11951, 2334, 4289, 1998, 10450, 13488, 8471, -11763, 9418, -6466, 9312, 12124, 1332, 3750, -13758, 3290, 5263, 10378, -10762, -3559, 10930, 9010, -6670}
{4419, 9650, 3857, -2479, 592, -2290, -12808, -3155, -12077, 7587, -8515, 816, -4859, -9742, -8800, 10612, -10413, 2138, 11550, 9671, -4191, 2501, 8836, -11348, 7159, -9731, -10495, -1029, 4231, 6938, 1146}
Returns: 1.0537436174149778E9
185
58941
{21011, -29338, -2976, -21103, 13829, -9573, -29258, 21748, -14294, 470, 13375, 21660, -8883, -27724, -1388, 15098, 29388, 19121, 22756, 10414, 22109, 7283, 9063, -11828, -3552, 25435, -12704, -14246, 16893, 6011, -20456, 11388, 12091, -10259, 29453, 18971, 11805, 4900, -16337, 12987, 27077, 21076, 4671, 13934, 238, -19596, -20082, -16993}
{-25711, 5090, 12256, 3589, -9628, 14266, -28943, 13789, -188, -16910, 27898, -23135, 29401, 18471, 4281, 5632, -18380, 25821, -20450, 23149, 24688, -5621, 17767, -18443, -13728, 27370, 24221, 17888, -8300, 18696, 5278, 13842, 5000, 12421, 18101, -13706, 12617, -2575, -4426, -20153, 11076, 26163, 136, -25355, -23440, 28762, 1495, -16310}
Returns: 5.309221668168796E9
6
65468
{5637, -3193, -1918, -27973, -5072, 13985, -16395, -13414, 13013, 5472, -24672}
{16138, -4027, -28247, 11723, 27996, -30955, 17838, 2119, 4223, -25548, -30087}
Returns: 7.4236719938070755E9
187
30075
{-234, -13368, 14797, 5937, 1695, 3738, -8483, -11889, -4428, 7028, 11956, 6883, -6531, -7060, -14795, -690, 8664, 2585, -11650, 10669, 11334, 6344, -1012, -1890, -5813, -6547, -2154, 6393, -13975, 8749, -2466}
{899, 10965, -8599, -10771, -783, -6253, -11032, 7260, -12529, -5670, -7889, -2743, -18, 11248, -2743, -12738, -10778, 9206, 6105, -10899, -428, 6540, 10290, 10900, 13781, -1628, -11696, 8946, -4749, 7345, 5511}
Returns: 1.1127595182035787E9
73
48024
{-7721, -15922, 6874, -21554, -15213, -6174, -13187, 4564, -2540, -11431, -22085, -9923, -2835, 11248, -9420, 10584, 16503, 20437, -7414, 17509, -1765, -13950, 19589, 9955, -11009, -5719, -23442, -2829, -19129, 11539, -4508, 7659, 8148, -22355, 17731, -19194, 13801, -1886, 18476, 13181}
{10392, 19379, -14508, 22444, 526, -16244, 1962, 20573, 4962, 14242, -2049, 14426, 16717, -11758, -10292, -16789, -19373, 15827, 1262, 21258, 15121, 18362, 10601, -21908, 20396, -10350, -18680, 19349, -9926, -9433, -17835, -11035, 2278, -3305, -23276, -20782, -17373, 18576, -17983, 13068}
Returns: 3.5097948803617997E9
190
83149
{23917, 17597, 35996, -37384, -23152, -21403, 14356, 20420, 17644, 4735}
{-3425, 5190, 7920, -31416, -33290, 9165, 35560, 26220, -22582, -32653}
Returns: 7.279846325374517E9
62
79613
{25464, 3287, -17695, -25904, 27933, -32497, 13337, -8152, 1621, -30784, -35083, 29889, 6457, 27960, 7733, -26033, 31044, 33752, 36045, 7629, 3808, 38460, 9237, 14215, 33716, 15215, 11231, -22299, 1398, -16934, -5550, 20619, 29818, -19063, -8889, 10935}
{25029, -7875, -9359, 6004, 26086, -27633, 33016, 18524, 29207, 22501, -6890, -27243, 22103, -11890, -33157, 20965, 10762, 7461, -7961, 10711, 25060, -7948, 17974, 1188, 29616, -21914, 25998, -21833, 17609, 19433, -8172, 35440, 27890, -15634, 36846, 1811}
Returns: 8.167354546261704E9
202
56067
{25576, 14894, -13709, -1721, -19958, 314, 16845, 14751, -9861, -25639, -19583, 24790, -23099, -4037, 19586, -25733, 4317, 21027, 20647, 3708, -14398, 1979, 18327, 7726, -13602, -17326, -1295, -23858, -21609, -15237, 7209, -5137, -14704, 254, 24945, -24095, 7331, 26515, -12417, -15051, 21384, -18122, -1228, -25644, -24402}
{1580, -25719, 27231, 13308, -7794, 9470, 17559, -18728, 8525, 23365, 1131, 12941, 21028, 12896, -16287, 21552, -3030, 641, 5269, -16125, -24146, 13060, -25847, -5371, 15636, -19914, -10722, -726, 219, 12723, -1475, -22827, -14343, 15504, 10410, 15583, -17664, 15526, 15611, 9228, -9289, 24775, 22418, 23792, 835}
Returns: 3.9522185725746336E9
198
58029
{7742, 21612, 16929, 10160, -10691, 11188, 9790, -10331, 423, -25332, 7851, 24438, 18753, -17321, 22962, -13463, 4712, -23361, -7971, 25296, 27519, 26588, -14665, 5632, 12973, -21545, 19043, -18893, -4589, -28369, -15647, 27308, -28114, 14591, -11773, -19298, -20102, 12379, 22435, -9228, -10020, -28551}
{-14234, -8799, -21252, 7361, -2048, -8739, 4628, -9169, -1728, 2619, 2432, 9473, -1522, -12355, 19219, -15400, -21810, -16271, 25543, 13190, 7734, -20062, 17555, 20396, -2501, 11605, -9904, -14917, -12933, -17385, -24066, -5743, -13013, 16173, 12659, -23013, 25281, 2398, -28733, 27478, 20871, -15056}
Returns: 4.361130358390214E9
37
62698
{-23425, -9776, 28048, -28848, -27052, 12290, 2213, -28353, -13901, 2037, -29738, 28127, -22482, 3090, -25371, -8662, -20780, -101, -12691, -24933, 10652, -8661, 18630, 13411, -11720, 28885, 10650, 1606, -16314, -825, -27094, -9789, 10490, 12313, 18877, -22313, -21922, 15860, -22820, -7832, 26900, 28755, 22706, 14970}
{-28832, 6291, 18665, -125, -3418, 16340, 25886, -25275, -20937, 23884, 989, 22185, -15637, 26746, 5593, -18853, -1558, -28755, 26352, 29222, -3385, -26555, 10416, -27617, -18112, -27415, -31326, -12597, -10201, 24800, -4853, -10888, 10026, 15789, 3938, 14021, -21161, -30787, 3936, 14923, 12089, 11597, -8384, -15360}
Returns: 6.367810300193945E9
10
47308
{8021, 26, 19716, 5222, -11096, -15101, 1373, -20543, 14644, 15114, -16480, 13584, -5019, -10723, 791, 22004, 21527, -4315, 8028, 5534, -11714, 15099, 22565, 21618, 196, 13005, 18708, -11378, 9522, 11300, -16662, -15502, 17416, -22275, -14261, 8839, 13714, -1840, -15358, -13130, 22524, -21254, 6136}
{20207, 2834, -18430, -1075, -14592, -18568, -22375, 5430, -18755, -832, 17961, 1952, -7335, 20517, 18022, -1042, 11770, 10296, -15493, 7717, -21780, 17118, 9397, 22286, -14338, -2431, 3437, -8258, -330, -10400, 5254, -4980, 267, -21782, 21872, -9023, 7392, -8982, -23414, -5361, -20114, -20488, 20911}
Returns: 3.8505090509710093E9
109
10496
{3588, 35, 2786, 3266, 4289, -2027, 207, 4243, -2664, 2574, -4861, -209, -5004, -3358, 736, 1845, 3842, 3839, -5203, -3090, -23, -3638, 659, 3364, -1986, -452, -3205, 1952, 1797, 1038, -4616, 4319, -5169, -1070, 3110, 2337, 5066, 1151, -159, -5101, -2077, 915, -8, -2425}
{-4079, 2959, -1210, 1497, -1827, -3724, -2767, 4017, 1326, 1803, -1693, -2106, 4857, 3347, -5243, -4100, -2160, -3410, 4761, 927, -1239, 462, -4899, -2793, -2937, 1371, 1331, -1878, -3332, 2323, 1080, 3891, -2949, -5178, 1804, -2116, 1937, -660, -1160, -2471, 1382, -2522, -2535, -50}
Returns: 1.5102224923766798E8
194
64738
{8298, 8802, 6034, 4502, 27953, -6287, -25382, 10502, 15336, 6671, -7434, -27012, -866, 596}
{10175, -26661, 29379, -7720, -9460, 20172, 21593, 25695, 6558, 30712, 1644, -16949, -22626, 5466}
Returns: 4.92380063616577E9
196
34263
{7008, -12971, -1384, -11422, -14527, 10865, -13253, -12948, -1007, 5047, 14598, -7086, 11211, -5566, 3187, -7470, 4312, 11977, -14300, 5475, 7145, 6467, 3357, 3841, -6346, 831, -7629, -5894, 6655, -6925, 4189, 14889, 14058, -8665, 13444, -16172}
{-5053, 11040, 1670, 8752, 13115, 15800, 10339, -1031, -5412, 5171, 542, -9374, 13237, -8059, 13588, 3864, 16070, 4392, 17063, -12491, 4147, -8838, 2486, -16245, 22, -12643, 12219, 16981, 12238, 9427, -15040, -16402, 10383, 11354, 2936, -296}
Returns: 1.4260866681276455E9
142
53868
{5469, -14615, -10909, -4040, -2446, 21991, 10878, -24345, 8606, 9065, -23531, 9147, -8746, 26183, 13548, 11332, -744, 8202, 18177, -18552, -11368, 13060, -6248, -25055, -18191, -2702}
{24447, -21515, -754, -10926, -9632, -4528, 24661, 6846, -6479, -19812, 13206, -8066, -25464, 12105, -19540, 18202, -14889, -26490, 21925, -3145, -16949, -10230, 6549, 18239, -15331, 5106}
Returns: 3.6374077971217933E9
221
12397
{3457, 6186, 3897, -5838, -4502, 4899, -607, 922, 4240, -458, -2167, -6091, -2114, -4909, 375, 5462, 4410, 3127, 3842, -5828, -246, -2019, 2776, 3922, -5338, 4182, 3748, -6043, 820, 5938, 622, 5346, -6091, 4659, -1042, 5919, -5712, -4149, -5101, -1513, 4856, -756, 2896, 937, -5023, -5954, -5755, 5750, -1507, -1432}
{765, 5335, -1327, -3919, 650, -2349, 6190, 883, -3360, 5408, -5526, -461, 307, 4599, 226, -252, -3657, 3523, -1027, 2977, 5311, -3143, 3643, -1024, -3853, 5899, 1761, 91, -4304, -1626, -451, 3319, 1965, 4910, -1915, -5820, 5057, -3739, 2492, -1878, 1324, 5704, -5337, 2255, 1026, 4923, 1461, -5191, -4383, -779}
Returns: 2.215151291228196E8
222
15561
{-4026, 1150, 3359, 6649, -1489, -4466, -399, -784, -5918, 7659, -6528, 1185, 3228, 1362, 3120, 2301, -4195, -5755, 5949, -1461, 3867, -498, -7155, -6824, 4506, 1935, 1101, -5744, 2763, -1409, 5742, 1942, 1800, -1696, 4100, -1284, 2601, 2859, -5574, 5920, -7326, -3702, 4416, -6005, -3985, 3951, 2711, -2234, -4026, 6591}
{6022, 386, 4450, 7306, -6501, -5454, 5790, -4627, 7608, 2353, -2267, -2832, 1589, 4984, -7378, -3457, 4569, 5322, 2826, 575, -3434, 2874, 3709, 5981, 2425, -6076, 1676, 7692, -4899, 4539, -5882, 4687, -3898, -3265, 1000, -6827, 2428, 5513, -6182, 3339, -4449, -3005, 2800, 6383, -3700, -158, 2484, 4793, -6679, -7578}
Returns: 3.61738573194942E8
221
31216
{8706, 640, -6383, -6473, -9086, 9617, 12727, -11902, 8562, -3420, -6946, -8145, 4100, 15234, -5150, 6211, 14251, -1354, 15183, 13233, -1691, 3996, -9074, 8868, 5480, 6884, 133, -11573, 3935, -2106, 3991, 986, 13046, -13054, 8830, -8576, 1961, -2971, 5993, -598, -6912, 11815, -8431, 12578, 5308, 5564, 1260, -3457, 10194, 4213}
{-3023, -4416, -6261, 9002, -11854, 7186, 4801, 4682, -3719, 6059, -6464, 10011, -15326, -12282, -4295, -12554, 1940, 6639, 3966, 15427, -14538, 14542, -2169, 13915, 9726, 13734, 9134, -10827, -1140, -8407, 10973, 2428, -9373, 15249, -12267, 11284, -13205, -628, -10217, -9703, -6686, 9958, 15412, -4232, -12461, 8329, 7407, 3657, -5442, 7493}
Returns: 1.4307775648945897E9
222
81399
{25450, 33639, -15051, -6037, 18559, 23211, 33032, 11891, 19622, 36923, 27559, -10874, 859, -19560, 256, 40172, -23984, 14380, -33489, -11685, 22675, -6408, -2410, -39449, -11100, -5369, -6756, 23864, 40619, 20190, 36416, 14157, -29371, 1277, 34340, -3032, 12889, 17341, -24563, 28649, -15920, 23704, 35407, 23423, 25208, 23970, 30451, -17749, -31260, 17449}
{19467, -29639, 24828, -28365, -28436, -10880, 1298, -25234, -33106, -14824, -40586, -6834, -16627, 7505, 39750, -12764, 27373, -17646, 28520, 38933, 6055, 11279, -25260, -20081, -7194, 40126, 37556, -12395, -30909, 1949, 301, -34346, 18570, 10680, -33646, 22750, 16053, 39870, 27926, -11712, -9341, 6394, -24823, -6114, 2262, -21663, -29389, 18700, 18701, 2459}
Returns: 8.150599819676901E9
221
68498
{-34070, -17049, -20285, -31655, 2579, 12799, -17459, -16538, -2714, -18453, -21982, 19868, 20856, 22100, 18658, 1392, 13630, -13698, -10707, 27539, -4494, -25978, -29900, 7416, 29493, 6068, -21852, -26018, 32175, 17390, -22861, -31009, 21058, -5746, -33833, -18389, -32522, 27687, -24545, 29814, 16299, 4135, 19629, 11269, 1337, -27199, 7747, -4917, 10921, -14092}
{-29905, -5445, -27429, 13822, 14642, -34230, -21172, 9342, -21803, -32791, -27309, -27516, 21960, 19872, 21212, -33938, -10688, -23643, 33491, -19810, -10745, -33436, 29938, 30551, -16316, -25584, -25252, 26221, 32332, 15308, -22288, 29119, -10544, 3773, -23709, -31108, -2145, -6613, 12326, 17528, -7919, -18869, -25448, -31715, 1661, -7516, 24050, 21932, -20086, 16195}
Returns: 6.967201339218625E9
222
4544
{-558, -717, 1622, -577, 1699, 2096, 1542, -166, -508, -1066, -2053, -309, 605, 242, 671, -896, -695, -2166, 520, -1674, -63, -1150, 2114, 1054, 1263, 1208, 1469, -1536, -455, 1769, 974, 746, 1374, -2162, 1087, -2119, 2057, -1713, 55, 471, 36, -1909, -2197, -814, 899, -1564, 1208, 473, 1955, 1207}
{-73, 520, 407, 670, 1682, 1217, 873, -702, -1001, 1638, -1403, -140, -1965, 932, 938, 1619, -215, -2043, -1273, 17, -1328, 922, 56, 17, -493, -1009, 1777, -1102, 1919, -1440, 563, -1365, -2060, 936, 1191, 112, 2256, -834, -1008, 702, -462, 186, 850, -314, -1274, -2102, 404, -1021, -827, 964}
Returns: 2.756201541283705E7
221
92255
{27191, 28115, 35273, -44631, 43579, 12749, -16135, 24119, 44616, -10639, -7407, -37972, -14978, -41441, 22097, -5798, -5670, -13314, 18055, 12912, 4767, 17683, 20842, -240, 15220, 20221, -6046, -4487, 15751, 30802, 21664, -25963, 4049, 45623, -18899, -239, -5312, 13827, 31131, -35822, 37434, 23300, -37669, -27255, 7101, -37019, -4156, -14235, -34657, -1728}
{42157, -10168, -26629, -22397, 2466, -32170, -28755, -36308, -38669, 6971, -32037, 19678, -37134, -45400, 34843, 9258, 39904, -41655, 26007, 33937, -21374, 38269, 33470, 5744, -18323, 15211, -16982, 849, -11387, -18347, -30203, -22521, -43916, -43849, 3531, -44557, 9803, -31421, -21868, 24827, -43069, 1376, -34472, 35751, -23065, -26870, 34073, 43430, -3892, -26148}
Returns: 1.1004013395357029E10
222
65696
{10133, 16211, -15010, -21643, 18743, -19350, -14885, -21362, 17867, -9707, 11118, 10385, -28461, -17938, -32628, 2136, -28919, -27410, -23619, -21096, -22206, 24284, 30938, -31085, -28981, -5469, 3040, 16468, -2142, 30118, 6730, -9899, 31354, 26181, 11656, 8580, 20316, 30011, -14408, 24255, 4741, -26725, 21078, 10354, -9790, 23200, -16459, -18395, 13630, -30902}
{10853, -13905, -6885, 31695, -8039, -17755, -14228, 23085, -12554, 6863, 4005, 20202, -13790, -30139, 26694, -18636, 2019, 29395, 3799, -18193, -10810, 20989, 6802, 17843, 18177, -1121, 193, 15435, -20542, 28799, -11263, -2755, 5648, 15713, -2231, -15503, -6645, -27843, 17123, 14724, -26898, 32567, -9932, 15943, 4486, -4823, 10687, 16910, -1871, 28998}
Returns: 6.087562313298213E9
221
62700
{-9642, 6650, 13252, -4457, -26900, 22596, 23356, -24953, -637, 11136, -9980, 1140, 19884, -1822, -14395, 2352, 17132, 28169, 15858, -6618, 23953, -10831, 18980, -11993, -8809, 16067, -30032, -11804, -26226, -13964, -28074, -17962, -8115, 21710, -19051, 24243, 5351, -16751, 18096, -13001, 16225, 21520, -17889, 26735, 16633, 16805, 10470, 6585, 16328, 6624}
{13050, -4622, 17901, -27034, -15720, -25870, 8255, 17425, 16625, 18694, 25361, -23756, 20812, 10397, 8648, 28610, -25050, 21544, 29751, 10509, -28434, -16838, 594, 7212, -26947, -21059, -17979, 28612, -17876, 10566, 20441, -28361, -29858, -23703, 23170, 23837, -12203, -6660, 10684, -15066, 20431, 18948, -28882, 11676, -18879, -1968, 79, -22530, -508, 25124}
Returns: 5.057293479567515E9
222
1297
{-362, -343, -235, 502, -630, -81, -81, -599, -514, -241, -489, 54, -12, -616, 436, 644, -510, -8, 596, -180, -473, 630, 136, -141, -467, -591, 376, -487, 522, 624, -27, -321, -499, -131, -302, -55, -244, -92, 291, -582, 252, 213, 235, -5, 318, 619, 582, 175, 347, 243}
{358, 491, 470, -150, 353, -89, 621, -196, 242, -540, -274, 374, 381, 342, -70, 429, 259, -284, -461, -56, 170, 503, -440, 198, 73, -264, -611, -374, -573, 456, 513, 51, -491, 505, -175, -505, -275, -20, -174, -140, 422, -523, -177, -145, 470, 445, -60, -458, 178, -128}
Returns: 2180005.3253087373
221
27438
{-10006, 9592, -4977, 6656, 9140, -4316, -12576, -7002, -1523, -7404, -10598, 9854, -464, 10599, 1193, -3706, 2966, -13642, -4621, 11760, 2579, 914, -8367, -1040, -12609, -9608, 4141, 468, -3462, 1989, 3726, 5614, 12098, -3072, -11356, 10352, -6987, -7739, -9446, 1720, 3497, -4063, 13623, -3107, 12050, -8014, -6117, -700, -13345, -7311}
{6268, 6764, 7866, 796, 2783, -8711, -8996, -2544, 492, 7950, -10837, -9459, 2374, -8307, -4354, -11031, 8045, -12213, 4051, 13287, 13443, -8623, 4332, -2192, -2174, 4925, -6114, 11201, 3236, -11748, -11232, -6432, 6869, -13620, -438, -1753, 7006, -13571, -1839, 12895, 9249, -5454, -9111, 5164, -9251, 7568, -8992, -5442, 9299, 30}
Returns: 1.1386853930208962E9
222
86605
{-24258, -42887, -19, -3083, -7795, -16137, -35511, -9060, -8186, 14448, 15008, 28939, -14501, 5164, -13013, 29126, -39122, -23298, 9752, 39734, 20169, -28389, 19760, -6788, -42041, 41345, 40653, 7743, -36124, -16869, 24790, -28758, -119, 40785, -22164, 22480, 13563, -5277, -16226, 14949, -33883, -22902, 29230, -32145, -25609, -39038, -19410, -20460, 22017, 3650}
{-37473, 41642, -33689, -12484, 29838, 19971, -10415, -12842, 16234, -37032, 29383, 17583, 32443, -9185, -13316, -34480, 38639, 31947, 31896, 19472, 19562, 1240, 35393, 29799, -22613, 12909, 14228, 7183, 1173, 4617, 2673, -22306, 492, -10328, 27572, 32389, 11559, 10687, 25112, -41189, 13966, 15646, -9721, 28474, 36432, -14495, -20896, 32669, -34028, -28673}
Returns: 9.732935597656563E9
221
52891
{23481, 1636, -19038, -11966, -8213, 6021, 17218, 11520, 17356, 8201, -10104, 8356, 4584, -20713, 2970, -21396, -20446, -14576, -7827, 4929, 21570, 55, 2839, 190, 14497, 20534, 4638, 353, -9192, -17308, -3782, 543, 3290, -14884, 2496, -15211, 6453, 25868, 3634, 19932, -21644, 1398, 6621, -19946, -2000, -9838, 7651, 14784, 6575, 10461}
{3403, 9365, -19135, -2510, 7327, 17605, -10071, 20049, -2065, 132, -19533, -14226, -536, -14835, -20156, -23278, -10617, 21738, 6979, -21615, 6410, 2923, -8405, 5775, 23397, 16543, 2631, -12679, -23806, -8595, -6468, 5905, -17422, 11947, -22260, -24174, 5206, -10024, -25634, 16149, 24041, -12970, -23756, -9019, -1355, 8309, -5670, -20408, 24679, 6336}
Returns: 3.5843699798377905E9
222
6263
{-2236, 1740, -1013, -54, -2618, -2468, 2069, 1487, -278, -2048, -877, -2188, 1764, 2357, 684, -931, 2812, -252, 1647, 1823, -2347, 2247, -2933, 1339, -1593, 2846, -886, 1760, -2500, -2756, 2856, -1131, -1292, -1689, 402, -645, 531, -1750, 465, -1964, -651, -2013, -523, -1130, -60, -608, 2202, -1922, -2497, 1545}
{-2470, -114, -1298, 1221, 2665, -2653, 306, 1637, -103, 2016, 2534, -1281, -2731, 1338, -1871, -426, 1134, 794, -1345, -1198, -688, -2703, 2978, 444, -3043, 3096, 1992, 1359, -960, 349, -1209, 1711, -2359, 2424, -26, -2899, -1148, -1249, -2024, 2348, 341, -10, -2813, 1979, 1331, 1056, 420, -455, 3016, 474}
Returns: 5.579619631904539E7
221
6578
{-946, 1381, 3027, -3234, -443, -3256, 491, -1959, 620, 954, 2471, -2663, 1266, 2264, -3203, 218, 1302, 389, 2885, 1886, 1595, -1219, 928, 3238, 377, -1792, 3013, -767, 3199, 1459, -1501, -514, 0, 1109, 888, -2003, 2535, 2913, -2424, 1266, 249, 875, 115, 2097, -3091, -701, -322, -1519, 2532, 1149}
{-454, -3116, 23, 1361, 3032, -276, 2312, -1550, -575, 467, -2021, -462, 1919, -2414, 3076, -1058, 942, 1058, 1822, 2213, -2284, 2578, 2583, -2265, 2627, 582, -58, 1083, -1875, 2923, -2049, 443, -957, -2516, 1402, 1350, 2896, 992, 1945, 2343, -788, 2032, 701, -2148, -1831, -2672, -1131, 1046, 971, -251}
Returns: 6.183720513956072E7
222
85176
{15978, 27062, 6036, -41542, 3301, 32686, -39898, -28500, 27129, -19826, 30732, 8461, -2981, -32965, 26512, -2787, -31774, -32600, 9816, 13846, 21037, 42296, 15017, -29619, -12721, -21018, -12657, 12632, 10519, -31340, -39967, -31003, -33382, 35164, -2339, -40107, -33831, 36906, -34159, 40159, 8086, 41435, -24572, 4621, 26363, 41548, -14329, -2666, -25010, -37825}
{9883, 19454, 27806, -25443, -22782, -21727, -16805, 27818, 34557, 9924, -3002, -2315, -20327, -11363, 18464, 18183, -12081, 24414, 39421, 42582, -36871, -10985, 10551, -8482, -34210, 37112, 17290, -14498, 24624, -13067, 11665, 27300, -41223, -39755, 35991, -31025, 29394, 18244, 21798, 23447, 24061, -41842, -27838, -27661, 20396, 30840, -5921, 12960, -36212, 39062}
Returns: 1.1495015125478014E10
221
12509
{1403, -1347, -2149, 624, 2565, 461, 86, -1593, 1581, 2056, -5743, 1031, 5577, -3501, 3344, 4752, -2663, 2427, 749, -3088, 1872, 1233, -440, -6072, -4531, 562, -540, -5548, 4191, 5896, -4002, 9, 3923, -2222, -2691, -4120, 192, 2874, -3437, 713, 6173, -22, 1624, -3638, 3175, 5534, 1375, 2762, -3969, -1488}
{4549, -6163, -1227, 1425, 5351, 1062, 2144, 1736, 5820, -2540, 1682, 3402, -182, 1182, -1663, -4462, -5313, -111, -2263, 4790, -5324, 2748, 5178, -4499, -2226, -4206, 920, 4801, -48, -1360, -2342, 5512, 3916, -1550, -2510, 6030, -4904, 2966, -5967, -1098, 820, -5277, 5848, -1669, 1515, -3006, 5405, -2769, 3749, 2325}
Returns: 2.0141239123287007E8
222
61710
{-6509, 13540, 918, 27014, 3831, -1875, -24947, -10210, -30561, -29074, 3798, -15057, -29993, -29548, 25550, -11891, -25743, -18366, 28779, 9772, -21500, -29194, 29542, -22216, 811, 29692, 7398, 26444, 1417, -22202, -29358, 24775, 503, 9565, 28627, 30584, 1237, -23010, -5836, -21598, 20046, -26038, 29038, 10232, -13765, 29004, -26486, -26844, 28966, -898}
{14969, 18543, -10219, 13244, 11837, 20316, -16685, -7676, -25353, 19234, -20885, -20319, 12053, -14107, 758, 28359, 23160, 9313, -1311, -3201, 22517, -29788, 19111, -16876, 22569, -14052, -12165, 9217, -21930, 22007, 22385, -20189, 3874, -19405, -20343, -30169, -17840, -12061, -14507, -16909, -26185, 216, 5509, 6941, 25533, 23283, -12407, 30489, 15976, -26453}
Returns: 6.110121181640289E9
221
73487
{28362, 21354, 17469, 14709, -5999, 34702, -27889, -23681, 32774, 19318, 20732, 32862, 27430, 15142, -32, -11127, -11023, 33562, 19185, 8315, 35329, 30293, -35751, 16314, -7073, 3370, 1683, -28108, 2929, -32630, -16554, 446, 4619, 14265, 6545, -19092, 28740, 28342, -9049, -35409, 18527, -36315, -21109, 28642, -27897, -5548, 11061, 22512, -30924, 13484}
{20555, 22498, -35123, -7409, -18010, 28682, 8126, -23491, -15026, 27438, 15604, -7385, 17700, 11730, 7590, -8962, 21895, -28632, -14545, 20133, 8513, 10476, -18466, 35190, 31821, 26913, -22691, -11426, 27917, 11419, 35786, -17702, -17016, -14929, -16451, -11582, 33140, 8194, -19569, -16222, -30862, -22582, 26300, -32239, -10902, -25281, 85, 11474, 4678, -33435}
Returns: 7.060023113613262E9
222
45679
{4635, -5775, -19571, 13161, 14637, -2356, 21617, 15986, -20754, 5010, -18014, 21590, 21199, 7086, -14426, -15921, -15363, -9079, 7679, 10908, 21463, 14973, -14482, 14705, -1152, -9735, 3765, -10598, -1598, -9340, 22025, -19111, -13411, 8303, -7005, 21447, -9529, 167, -1749, -11144, -22506, -13229, -5714, 2051, 19710, 21268, 6176, 12406, 9653, -4467}
{-13555, 18618, 19137, 8615, -6709, -2607, 17931, 13305, -990, 901, -11662, -16389, 16479, 1654, 15207, 9626, -2864, -2355, -10549, 12782, 5438, 11119, -22025, 16932, -8076, -14065, 7807, -7702, -2063, -3099, -10990, -11706, -7856, 8340, 9933, 3726, 12040, -16454, 16520, 13489, 16109, 16284, -96, -11514, 5632, -15786, 922, -14661, -18296, 16935}
Returns: 2.8430744932770286E9
221
1314
{539, 277, 854, 327, 95, 686, 694, 453, 170, 317, 2, 141, 21, -74, -73, -307, -350, -428, -172, -406, -182, -4, -571, -890, -262, -452, -270, -184, -627, -517, -428, -657, -315, -32, -4, -159, -82, -40, 10, 111, 290, 6, 60, 74, 56, 629, 1, 519, 752, 462}
{13, 22, 144, 115, 233, 49, 373, 109, 564, 701, 468, 570, 738, 237, 727, 682, 433, 473, 498, 441, 293, 45, 151, 134, 1, -2, -131, -95, -321, -437, -168, -424, -288, -763, -601, -275, -419, -13, -218, -458, -313, -745, -574, -706, -559, -107, -449, -167, -85, -91}
Returns: 2613474.3026818475
221
651
{402, 95, 19, 344, 171, 34, 323, 76, 176, 171, 118, 29, 13, -18, -59, -93, -195, -53, -115, -243, -40, -275, -247, -38, -278, -125, -464, -20, -291, -258, -321, -215, -62, -39, -162, -117, -5, -1, 25, 13, 156, 13, 20, 250, 285, 9, 219, 273, 431, 152}
{3, 53, 79, 38, 203, 256, 44, 224, 17, 229, 264, 413, 15, 96, 366, 27, 209, 68, 39, 289, 112, 116, 112, 60, 44, -2, -47, -97, -2, -29, -277, -179, -82, -342, -328, -79, -387, -6, -15, -455, -161, -377, -69, -150, -27, -89, -123, -151, -75, -28}
Returns: 716223.0090275386
222
1080
{512, 97, 153, 629, 168, 594, 41, 44, 278, 330, 214, 5, 7, -47, -104, -40, -151, -301, -460, -6, -502, -165, -438, -97, -455, -591, -771, -742, -571, -419, -168, -185, -261, -325, -167, -145, -93, -12, 38, 60, 240, 210, 188, 124, 528, 84, 325, 254, 455, 501}
{4, 43, 185, 237, 6, 124, 141, 127, 57, 463, 505, 762, 75, 30, 209, 343, 14, 577, 358, 288, 441, 302, 154, 41, 39, -10, -66, -210, -122, -121, -13, -395, -211, -74, -235, -598, -283, -532, -78, -31, -224, -169, -76, -270, -423, -130, -158, -161, -33, -12}
Returns: 1898458.624672409
221
950
{279, 392, 484, 192, 328, 20, 71, 183, 14, 272, 189, 98, 21, -24, -72, -229, -71, -212, -257, -305, -71, -460, -609, -363, -148, -589, -399, -426, -118, -120, -220, -384, -243, -236, -267, -24, -37, -24, 35, 95, 73, 164, 238, 140, 448, 422, 168, 474, 535, 585}
{5, 94, 81, 72, 30, 204, 111, 62, 591, 5, 102, 600, 270, 226, 259, 413, 257, 39, 500, 231, 89, 46, 48, 135, 58, -6, -55, -166, -248, -166, -373, -31, -541, -465, -5, -516, -294, -390, -300, -571, -330, -257, -345, -62, -176, -26, -266, -114, -75, -12}
Returns: 1436225.654689734
222
1523
{696, 143, 411, 1040, 898, 640, 528, 337, 217, 397, 21, 180, 52, -27, -71, -17, -254, -235, -250, -419, -622, -357, -510, -876, -777, -1107, -442, -428, -926, -715, -250, -369, -525, -316, -445, -90, -190, -15, 64, 141, 366, 34, 151, 301, 565, 223, 559, 500, 255, 642}
{12, 62, 272, 126, 407, 646, 732, 130, 380, 214, 812, 522, 1021, 812, 395, 1016, 281, 535, 729, 749, 337, 452, 67, 265, 100, -2, -137, -283, -323, -263, -26, -146, -572, -95, -506, -299, -109, -579, -760, -426, -508, -654, -834, -282, -54, -395, -499, -185, -14, -107}
Returns: 3704203.007455117
221
522
{53, 353, 138, 338, 112, 284, 79, 26, 71, 24, 36, 38, 3, -16, -45, -125, -99, -135, -228, -199, -20, -252, -71, -196, -160, -157, -374, -138, -44, -278, -287, -275, -132, -67, -6, -22, -34, 0, 19, 7, 103, 41, 65, 121, 207, 133, 149, 285, 144, 174}
{1, 41, 13, 67, 172, 160, 207, 206, 231, 25, 19, 129, 127, 283, 148, 26, 39, 132, 144, 37, 215, 112, 41, 78, 12, -4, -21, -53, -104, -173, -12, -125, -60, -208, -313, -39, -179, -342, -161, -86, -116, -41, -56, -212, -70, -168, -46, -80, -8, -30}
Returns: 432282.7993462297
222
488
{41, 20, 206, 273, 133, 269, 245, 161, 183, 68, 59, 17, 0, -20, -12, -112, -124, -200, -105, -76, -169, -149, -225, -249, -21, -267, -351, -129, -235, -203, -126, -113, -3, -61, -125, -22, -39, -12, 23, 3, 116, 111, 30, 213, 54, 8, 239, 301, 215, 64}
{1, 3, 61, 36, 32, 56, 12, 105, 6, 35, 165, 150, 139, 6, 221, 231, 314, 36, 43, 156, 71, 157, 87, 12, 6, -2, -37, -61, -70, -19, -118, -5, -137, -161, -324, -217, -247, -108, -348, -25, -288, -136, -116, -28, -143, -103, -19, -81, -54, -14}
Returns: 393161.3858758691
221
243
{146, 118, 93, 40, 73, 104, 74, 88, 9, 6, 53, 27, 7, -11, -11, 0, -30, -42, -23, -39, -79, -125, -126, -146, -73, -74, -99, -133, -81, -69, -28, -28, -47, -74, -12, -11, -16, -2, 13, 30, 13, 79, 22, 73, 117, 118, 157, 136, 135, 158}
{0, 19, 43, 26, 8, 9, 81, 72, 29, 76, 72, 18, 170, 39, 17, 80, 28, 88, 46, 100, 40, 41, 19, 3, 12, 0, -3, -17, -42, -85, -93, -34, -63, -85, -132, -89, -146, -37, -49, -93, -94, -102, -111, -3, -118, -11, -48, -53, -18, -11}
Returns: 88461.98906193778
221
1138
{739, 732, 713, 683, 642, 591, 531, 462, 386, 304, 218, 127, 35, -57, -149, -239, -324, -405, -479, -546, -604, -653, -691, -719, -735, -739, -732, -713, -683, -642, -591, -531, -462, -386, -304, -218, -127, -35, 57, 149, 239, 324, 405, 479, 546, 604, 653, 691, 719, 735}
{11, 103, 194, 282, 366, 443, 514, 576, 630, 673, 706, 728, 738, 737, 724, 699, 664, 618, 562, 498, 425, 346, 261, 173, 81, -11, -103, -194, -282, -366, -443, -514, -576, -630, -673, -706, -728, -738, -737, -724, -699, -664, -618, -562, -498, -425, -346, -261, -173, -81}
Returns: 2519983.180952061
222
970
{630, 624, 608, 582, 547, 504, 453, 394, 329, 259, 185, 108, 30, -49, -127, -203, -276, -345, -409, -466, -515, -557, -589, -612, -626, -630, -624, -608, -582, -547, -504, -453, -394, -329, -259, -185, -108, -30, 49, 127, 203, 276, 345, 409, 466, 515, 557, 589, 612, 626}
{9, 88, 165, 240, 311, 378, 438, 491, 537, 574, 602, 621, 629, 628, 617, 596, 566, 527, 479, 424, 362, 295, 223, 147, 69, -9, -88, -165, -240, -311, -378, -438, -491, -537, -574, -602, -621, -629, -628, -617, -596, -566, -527, -479, -424, -362, -295, -223, -147, -69}
Returns: 1814361.9517334844
221
343
{222, 220, 215, 206, 193, 178, 160, 139, 116, 91, 65, 38, 10, -17, -45, -72, -97, -122, -144, -164, -182, -196, -208, -216, -221, -222, -220, -215, -206, -193, -178, -160, -139, -116, -91, -65, -38, -10, 17, 45, 72, 97, 122, 144, 164, 182, 196, 208, 216, 221}
{3, 31, 58, 85, 110, 133, 155, 173, 190, 203, 213, 219, 222, 222, 218, 210, 200, 186, 169, 150, 128, 104, 78, 52, 24, -3, -31, -58, -85, -110, -133, -155, -173, -190, -203, -213, -219, -222, -222, -218, -210, -200, -186, -169, -150, -128, -104, -78, -52, -24}
Returns: 226011.54751626795
222
1530
{994, 984, 959, 919, 864, 795, 714, 622, 520, 409, 293, 171, 47, -77, -200, -321, -436, -545, -645, -735, -813, -878, -930, -966, -988, -994, -984, -959, -919, -864, -795, -714, -622, -520, -409, -293, -171, -47, 77, 200, 321, 436, 545, 645, 735, 813, 878, 930, 966, 988}
{14, 139, 261, 379, 492, 596, 691, 775, 847, 906, 950, 979, 993, 991, 973, 941, 893, 831, 756, 669, 572, 465, 352, 232, 109, -14, -139, -261, -379, -492, -596, -691, -775, -847, -906, -950, -979, -993, -991, -973, -941, -893, -831, -756, -669, -572, -465, -352, -232, -109}
Returns: 4514018.379012555
221
1258
{817, 809, 788, 755, 710, 654, 587, 511, 427, 337, 240, 141, 39, -63, -165, -264, -359, -448, -530, -604, -668, -722, -764, -794, -812, -817, -809, -788, -755, -710, -654, -587, -511, -427, -337, -240, -141, -39, 63, 165, 264, 359, 448, 530, 604, 668, 722, 764, 794, 812}
{12, 114, 215, 312, 404, 490, 568, 637, 696, 745, 781, 805, 816, 815, 800, 773, 734, 683, 622, 550, 470, 383, 289, 191, 90, -12, -114, -215, -312, -404, -490, -568, -637, -696, -745, -781, -805, -816, -815, -800, -773, -734, -683, -622, -550, -470, -383, -289, -191, -90}
Returns: 3079458.8159014033
221
548
{356, 352, 343, 329, 309, 284, 255, 222, 186, 146, 104, 61, 17, -27, -71, -115, -156, -195, -231, -263, -291, -314, -333, -346, -354, -356, -352, -343, -329, -309, -284, -255, -222, -186, -146, -104, -61, -17, 27, 71, 115, 156, 195, 231, 263, 291, 314, 333, 346, 354}
{5, 49, 93, 136, 176, 213, 247, 277, 303, 324, 340, 350, 355, 355, 348, 337, 319, 297, 271, 239, 205, 166, 126, 83, 39, -5, -49, -93, -136, -176, -213, -247, -277, -303, -324, -340, -350, -355, -355, -348, -337, -319, -297, -271, -239, -205, -166, -126, -83, -39}
Returns: 581978.678106108
222
1330
{864, 855, 834, 798, 751, 691, 621, 540, 452, 356, 254, 149, 41, -67, -174, -279, -379, -474, -560, -638, -706, -763, -808, -840, -859, -864, -855, -834, -798, -751, -691, -621, -540, -452, -356, -254, -149, -41, 67, 174, 279, 379, 474, 560, 638, 706, 763, 808, 840, 859}
{12, 121, 227, 330, 427, 518, 601, 674, 736, 787, 826, 851, 863, 861, 846, 818, 776, 722, 657, 582, 497, 405, 306, 202, 95, -12, -121, -227, -330, -427, -518, -601, -674, -736, -787, -826, -851, -863, -861, -846, -818, -776, -722, -657, -582, -497, -405, -306, -202, -95}
Returns: 3411015.8958671065
221
1076
{699, 692, 674, 646, 607, 559, 502, 437, 365, 288, 206, 120, 33, -54, -141, -226, -307, -383, -453, -516, -571, -617, -654, -679, -695, -699, -692, -674, -646, -607, -559, -502, -437, -365, -288, -206, -120, -33, 54, 141, 226, 307, 383, 453, 516, 571, 617, 654, 679, 695}
{10, 98, 184, 267, 346, 419, 486, 545, 596, 637, 668, 688, 698, 697, 684, 661, 628, 584, 532, 471, 402, 327, 247, 163, 77, -10, -98, -184, -267, -346, -419, -486, -545, -596, -637, -668, -688, -698, -697, -684, -661, -628, -584, -532, -471, -402, -327, -247, -163, -77}
Returns: 2252877.93102779
222
1848
{1201, 1189, 1158, 1110, 1043, 961, 863, 751, 628, 495, 354, 207, 57, -93, -242, -388, -527, -658, -779, -887, -982, -1061, -1123, -1167, -1193, -1201, -1189, -1158, -1110, -1043, -961, -863, -751, -628, -495, -354, -207, -57, 93, 242, 388, 527, 658, 779, 887, 982, 1061, 1123, 1167, 1193}
{18, 168, 316, 458, 594, 720, 835, 936, 1023, 1094, 1147, 1183, 1199, 1197, 1176, 1136, 1079, 1004, 913, 809, 691, 562, 425, 281, 132, -18, -168, -316, -458, -594, -720, -835, -936, -1023, -1094, -1147, -1183, -1199, -1197, -1176, -1136, -1079, -1004, -913, -809, -691, -562, -425, -281, -132}
Returns: 6585433.902447475
8
5
{8}
{8}
Returns: -1.0
It is not possible to enclose this penguin. Please note that while a penguin can't be located close to a potential fencing (see constraints), it can be located close to or exactly on a straight line passing through any pair of fence posts.
7
10
{9}
{1}
Returns: 29.436752637711805
30
800
{8,2,100,120,52,67,19,-36}
{-19,12,88,-22,53,66,-140,99}
Returns: 384778.74757953023
5
5
{1,-100}
{0,-100}
Returns: -1.0
12
17
{20}
{3}
Returns: -1.0
3
10
{-11}
{0}
Returns: -1.0
3
10
{5}
{5}
Returns: -1.0
3
10
{5}
{-5}
Returns: -1.0
3
10
{-6}
{-5}
Returns: -1.0
3
10
{4}
{4}
Returns: -1.0
3
10
{4}
{-4}
Returns: -1.0
30
800
{8, 2, 100, 120, 52, 67, 19, -36 }
{-19, 12, 88, -22, 53, 66, -140, 99 }
Returns: 384778.74757953023
3
5
{-1 }
{0 }
Returns: 32.47595264191645
4
5
{2 }
{1 }
Returns: 25.0