public void Test3() { // Arrange var points = new[] { new[] { 1, 1 }, new[] { 1, 3 }, new[] { 3, 1 }, new[] { 3, 3 }, new[] { 4, 1 }, new[] { 4, 3 } }; // Act var minArea = new MinRectangleAxisAligned3().MinAreaRect(points); // Assert Assert.AreEqual(2, minArea); }
public void Test5() { // Arrange var points = new[] { new[] { 0, 0 }, new[] { 3, 3 }, new[] { 5, 2 }, new[] { 5, 5 }, new[] { 1, 4 }, new[] { 1, 1 }, new[] { 2, 0 } , new[] { 0, 5 }, new[] { 4, 3 }, new[] { 2, 4 }, new[] { 1, 0 }, new[] { 5, 3 }, new[] { 4, 1 }, new[] { 0, 2 } , new[] { 4, 0 } }; // Act var minArea = new MinRectangleAxisAligned3().MinAreaRect(points); // Assert Assert.AreEqual(3, minArea); }
public void Test6() { // Arrange var points = new[] { new[] { 33489, 35488 }, new[] { 35453, 25333 }, new[] { 33489, 13087 }, new[] { 35453, 28054 } , new[] { 33489, 3192 }, new[] { 35453, 32718 }, new[] { 33489, 34158 }, new[] { 33489, 28804 } , new[] { 33489, 31324 }, new[] { 33489, 10279 }, new[] { 35453, 24627 }, new[] { 33489, 16560 } , new[] { 33489, 15995 }, new[] { 33489, 32718 }, new[] { 35453, 9172 }, new[] { 35453, 11474 } , new[] { 35453, 24648 }, new[] { 33489, 8839 }, new[] { 33489, 6218 }, new[] { 35453, 32181 } , new[] { 35453, 21472 }, new[] { 33489, 19329 }, new[] { 33489, 11187 }, new[] { 33489, 14444 } , new[] { 35453, 16560 }, new[] { 35453, 5883 }, new[] { 35453, 3442 }, new[] { 35453, 30089 } , new[] { 35453, 18602 }, new[] { 33489, 33912 }, new[] { 33489, 6673 }, new[] { 35453, 14113 } , new[] { 35453, 38039 }, new[] { 35453, 24035 }, new[] { 35453, 28804 }, new[] { 35453, 36166 } , new[] { 33489, 26912 }, new[] { 33489, 3819 }, new[] { 33489, 25556 }, new[] { 33489, 21240 } , new[] { 35453, 11106 }, new[] { 33489, 33396 }, new[] { 33489, 17271 }, new[] { 35453, 21497 } , new[] { 35453, 20923 }, new[] { 35453, 8839 }, new[] { 33489, 36166 }, new[] { 33489, 6717 } , new[] { 35453, 20212 }, new[] { 35453, 5231 }, new[] { 35453, 14741 }, new[] { 35453, 12687 } , new[] { 35453, 35547 }, new[] { 33489, 3442 }, new[] { 35453, 26312 }, new[] { 35453, 1812 } , new[] { 33489, 22809 }, new[] { 35453, 9112 }, new[] { 35453, 22405 }, new[] { 35453, 7035 } , new[] { 33489, 22482 }, new[] { 33489, 37334 }, new[] { 35453, 23418 }, new[] { 33489, 1688 } , new[] { 33489, 21497 }, new[] { 33489, 8877 }, new[] { 33489, 13883 }, new[] { 35453, 38389 } , new[] { 35453, 363 }, new[] { 35453, 39062 }, new[] { 33489, 2649 }, new[] { 35453, 9347 } , new[] { 35453, 13883 }, new[] { 35453, 1481 }, new[] { 35453, 39796 }, new[] { 33489, 7234 } , new[] { 33489, 39331 }, new[] { 35453, 39790 }, new[] { 33489, 7035 }, new[] { 35453, 22482 } , new[] { 35453, 15645 }, new[] { 35453, 20073 }, new[] { 35453, 26805 }, new[] { 35453, 7211 } , new[] { 35453, 33366 }, new[] { 33489, 39608 }, new[] { 35453, 1186 }, new[] { 33489, 10490 } , new[] { 33489, 3547 }, new[] { 35453, 507 }, new[] { 33489, 7677 }, new[] { 33489, 15521 } , new[] { 35453, 32512 }, new[] { 33489, 10303 }, new[] { 33489, 33154 }, new[] { 35453, 14444 } , new[] { 33489, 20089 }, new[] { 35453, 39608 }, new[] { 35453, 19316 }, new[] { 33489, 32050 } , new[] { 33489, 24648 }, new[] { 35453, 15207 }, new[] { 33489, 20679 }, new[] { 33489, 11914 } , new[] { 33489, 29908 }, new[] { 33489, 2265 }, new[] { 35453, 18691 }, new[] { 35453, 22864 } , new[] { 35453, 15396 }, new[] { 33489, 33104 }, new[] { 33489, 19932 }, new[] { 35453, 39497 } , new[] { 33489, 25529 }, new[] { 35453, 3192 }, new[] { 33489, 507 }, new[] { 35453, 3547 } , new[] { 35453, 8966 }, new[] { 33489, 413 }, new[] { 35453, 4779 }, new[] { 35453, 2439 } , new[] { 35453, 1688 } , new[] { 35453, 15995 }, new[] { 35453, 8158 }, new[] { 33489, 3979 }, new[] { 33489, 15137 } , new[] { 33489, 33012 }, new[] { 35453, 9163 }, new[] { 33489, 21506 }, new[] { 33489, 9112 } , new[] { 33489, 33539 }, new[] { 35453, 12866 }, new[] { 35453, 8589 }, new[] { 35453, 33104 } , new[] { 33489, 26312 }, new[] { 33489, 22688 }, new[] { 35453, 13087 }, new[] { 33489, 35668 } , new[] { 33489, 39199 }, new[] { 35453, 9678 }, new[] { 33489, 39790 }, new[] { 35453, 5000 } , new[] { 35453, 6753 }, new[] { 33489, 34008 }, new[] { 33489, 9785 }, new[] { 35453, 21240 } , new[] { 33489, 9678 }, new[] { 35453, 603 }, new[] { 35453, 33912 }, new[] { 35453, 14816 } , new[] { 33489, 4597 }, new[] { 35453, 39879 }, new[] { 33489, 25302 }, new[] { 35453, 1312 } , new[] { 35453, 9785 }, new[] { 35453, 38139 }, new[] { 33489, 28851 }, new[] { 33489, 15207 } , new[] { 33489, 30580 }, new[] { 35453, 6134 }, new[] { 35453, 21143 }, new[] { 33489, 14589 } , new[] { 35453, 4398 }, new[] { 33489, 20923 }, new[] { 33489, 22405 }, new[] { 35453, 27613 } , new[] { 35453, 28851 }, new[] { 33489, 4564 }, new[] { 35453, 7745 }, new[] { 35453, 7564 } , new[] { 35453, 34229 }, new[] { 33489, 29391 }, new[] { 33489, 12579 }, new[] { 33489, 14749 } , new[] { 35453, 1338 }, new[] { 35453, 20125 }, new[] { 33489, 2492 }, new[] { 35453, 23178 } , new[] { 33489, 9452 }, new[] { 35453, 29391 }, new[] { 33489, 39497 }, new[] { 35453, 24267 } , new[] { 33489, 17560 }, new[] { 35453, 20815 }, new[] { 35453, 10490 }, new[] { 35453, 24252 } , new[] { 35453, 14429 }, new[] { 35453, 26912 }, new[] { 35453, 7694 }, new[] { 33489, 2253 } , new[] { 35453, 20089 }, new[] { 33489, 12496 }, new[] { 33489, 20815 }, new[] { 33489, 24691 } , new[] { 35453, 32959 }, new[] { 33489, 12866 }, new[] { 33489, 1312 }, new[] { 33489, 24627 } , new[] { 33489, 27912 }, new[] { 33489, 20073 }, new[] { 33489, 37268 }, new[] { 35453, 6230 } , new[] { 33489, 25333 }, new[] { 35453, 17271 }, new[] { 33489, 9172 }, new[] { 35453, 35129 } , new[] { 35453, 20679 }, new[] { 33489, 8966 }, new[] { 35453, 2649 }, new[] { 35453, 8877 } , new[] { 33489, 30089 }, new[] { 35453, 39859 }, new[] { 33489, 11528 }, new[] { 35453, 9707 } , new[] { 33489, 8589 }, new[] { 33489, 5000 }, new[] { 35453, 2590 }, new[] { 35453, 1267 } , new[] { 33489, 36760 }, new[] { 33489, 7604 }, new[] { 35453, 11187 }, new[] { 35453, 6563 } , new[] { 35453, 21785 }, new[] { 35453, 6406 }, new[] { 33489, 13192 }, new[] { 35453, 413 } , new[] { 33489, 31531 }, new[] { 33489, 7745 }, new[] { 35453, 20832 }, new[] { 33489, 33141 } , new[] { 35453, 25079 }, new[] { 33489, 33366 }, new[] { 35453, 17560 }, new[] { 35453, 29379 } , new[] { 33489, 11986 }, new[] { 33489, 22579 }, new[] { 35453, 6717 }, new[] { 35453, 2152 } , new[] { 33489, 38645 }, new[] { 33489, 18602 }, new[] { 33489, 20212 }, new[] { 35453, 9889 } , new[] { 35453, 9452 }, new[] { 33489, 15396 }, new[] { 35453, 2265 }, new[] { 35453, 2492 } , new[] { 33489, 23187 }, new[] { 33489, 34918 }, new[] { 35453, 22579 }, new[] { 35453, 25556 } , new[] { 35453, 39199 }, new[] { 35453, 38645 }, new[] { 33489, 31060 }, new[] { 35453, 4033 } , new[] { 35453, 36786 }, new[] { 35453, 7677 }, new[] { 33489, 4352 }, new[] { 33489, 24267 } , new[] { 33489, 6753 }, new[] { 33489, 7564 }, new[] { 33489, 21472 }, new[] { 33489, 2819 } , new[] { 35453, 3333 }, new[] { 33489, 9347 }, new[] { 33489, 38139 }, new[] { 33489, 1481 } , new[] { 35453, 12008 }, new[] { 35453, 15137 }, new[] { 33489, 24035 }, new[] { 33489, 38039 } , new[] { 33489, 10159 }, new[] { 33489, 39879 }, new[] { 33489, 25888 }, new[] { 35453, 35488 } , new[] { 33489, 11106 }, new[] { 33489, 33077 }, new[] { 33489, 5880 }, new[] { 35453, 1709 } , new[] { 35453, 34008 }, new[] { 35453, 37379 }, new[] { 33489, 1338 }, new[] { 33489, 6224 } , new[] { 33489, 32521 }, new[] { 35453, 10303 }, new[] { 33489, 37208 }, new[] { 35453, 33154 } , new[] { 35453, 14285 }, new[] { 35453, 22311 }, new[] { 35453, 24691 }, new[] { 33489, 7211 } , new[] { 35453, 14474 }, new[] { 33489, 1186 }, new[] { 33489, 21785 }, new[] { 35453, 16280 } , new[] { 33489, 14285 }, new[] { 33489, 4398 }, new[] { 35453, 37334 }, new[] { 35453, 23187 } , new[] { 35453, 7604 }, new[] { 33489, 13079 }, new[] { 33489, 1709 }, new[] { 35453, 33396 } , new[] { 35453, 3441 }, new[] { 35453, 36760 }, new[] { 33489, 363 }, new[] { 35453, 4597 } , new[] { 33489, 29379 }, new[] { 33489, 39062 }, new[] { 35453, 37208 }, new[] { 35453, 932 } , new[] { 33489, 22864 }, new[] { 35453, 34918 }, new[] { 33489, 35557 }, new[] { 35453, 19932 } , new[] { 35453, 35069 }, new[] { 33489, 7957 }, new[] { 33489, 35328 }, new[] { 33489, 9163 } , new[] { 35453, 27882 }, new[] { 35453, 3979 }, new[] { 33489, 13731 }, new[] { 33489, 35129 } , new[] { 35453, 12579 }, new[] { 35453, 20334 }, new[] { 35453, 33210 }, new[] { 35453, 35328 } , new[] { 33489, 28883 }, new[] { 35453, 6761 }, new[] { 35453, 37268 }, new[] { 33489, 4779 } , new[] { 33489, 14352 }, new[] { 33489, 3441 }, new[] { 33489, 39859 }, new[] { 33489, 6406 } , new[] { 33489, 10074 }, new[] { 35453, 12164 }, new[] { 35453, 31323 }, new[] { 33489, 7694 } , new[] { 35453, 12496 }, new[] { 35453, 22375 }, new[] { 33489, 23178 }, new[] { 33489, 14429 } , new[] { 35453, 35668 }, new[] { 35453, 33539 }, new[] { 35453, 32935 }, new[] { 35453, 16813 } , new[] { 35453, 17230 }, new[] { 35453, 31324 }, new[] { 33489, 1267 }, new[] { 33489, 32922 } , new[] { 33489, 17230 }, new[] { 35453, 37393 }, new[] { 35453, 33077 }, new[] { 33489, 6230 } , new[] { 35453, 7021 }, new[] { 33489, 23418 }, new[] { 35453, 17849 }, new[] { 35453, 10074 } , new[] { 33489, 11474 }, new[] { 33489, 2152 }, new[] { 33489, 13084 }, new[] { 33489, 14113 } , new[] { 35453, 15521 }, new[] { 33489, 16280 }, new[] { 33489, 39734 }, new[] { 33489, 36786 } , new[] { 33489, 3333 }, new[] { 35453, 4564 }, new[] { 33489, 26805 }, new[] { 33489, 28054 } , new[] { 33489, 35069 }, new[] { 35453, 14201 }, new[] { 33489, 20334 }, new[] { 35453, 22512 } , new[] { 35453, 10159 }, new[] { 33489, 32512 }, new[] { 35453, 5880 }, new[] { 33489, 6832 } , new[] { 33489, 12687 }, new[] { 35453, 35557 }, new[] { 35453, 14352 }, new[] { 35453, 2253 } , new[] { 33489, 32211 }, new[] { 35453, 11986 }, new[] { 33489, 14816 }, new[] { 35453, 39331 } , new[] { 35453, 31531 }, new[] { 33489, 38389 }, new[] { 33489, 18691 }, new[] { 35453, 5912 } , new[] { 33489, 35547 }, new[] { 35453, 6832 }, new[] { 33489, 12008 }, new[] { 33489, 22375 } , new[] { 33489, 8158 }, new[] { 33489, 39796 }, new[] { 35453, 18071 }, new[] { 33489, 37302 } , new[] { 33489, 14201 }, new[] { 33489, 21143 }, new[] { 33489, 22512 }, new[] { 33489, 23663 } , new[] { 33489, 2957 }, new[] { 35453, 11528 }, new[] { 35453, 7957 }, new[] { 33489, 25079 } , new[] { 35453, 33141 }, new[] { 35453, 22688 }, new[] { 35453, 3819 }, new[] { 33489, 19316 } , new[] { 35453, 32922 }, new[] { 35453, 14749 }, new[] { 33489, 32935 }, new[] { 35453, 33012 } , new[] { 33489, 14741 }, new[] { 33489, 7021 }, new[] { 33489, 5883 }, new[] { 33489, 37393 } , new[] { 33489, 20125 }, new[] { 33489, 18071 }, new[] { 35453, 11914 }, new[] { 33489, 1812 } , new[] { 33489, 10587 }, new[] { 35453, 14589 }, new[] { 35453, 21670 }, new[] { 35453, 13079 } , new[] { 33489, 5231 }, new[] { 35453, 30580 }, new[] { 35453, 6224 }, new[] { 35453, 27505 } , new[] { 35453, 13192 }, new[] { 33489, 27613 }, new[] { 35453, 29908 }, new[] { 35453, 6218 } , new[] { 35453, 25888 }, new[] { 33489, 32181 }, new[] { 33489, 33210 }, new[] { 33489, 37531 } , new[] { 35453, 837 }, new[] { 33489, 12164 }, new[] { 33489, 603 }, new[] { 35453, 27912 } , new[] { 33489, 22311 }, new[] { 33489, 27882 }, new[] { 35453, 39734 }, new[] { 35453, 14508 } , new[] { 33489, 6563 }, new[] { 35453, 21506 }, new[] { 35453, 34158 }, new[] { 35453, 10587 } , new[] { 33489, 837 }, new[] { 33489, 21670 }, new[] { 33489, 6761 }, new[] { 33489, 2439 } , new[] { 33489, 15645 }, new[] { 33489, 4033 }, new[] { 35453, 19329 }, new[] { 33489, 37379 } , new[] { 33489, 27505 }, new[] { 33489, 9889 }, new[] { 35453, 4352 }, new[] { 33489, 5912 } , new[] { 33489, 3418 }, new[] { 33489, 38587 }, new[] { 33489, 932 }, new[] { 33489, 14474 } , new[] { 35453, 31060 }, new[] { 33489, 9707 }, new[] { 33489, 14508 }, new[] { 35453, 2819 } , new[] { 35453, 35150 }, new[] { 35453, 23663 }, new[] { 35453, 38587 }, new[] { 35453, 6673 } , new[] { 35453, 32050 }, new[] { 35453, 28883 }, new[] { 33489, 2590 }, new[] { 35453, 37302 } , new[] { 33489, 6134 }, new[] { 33489, 17849 }, new[] { 35453, 13731 }, new[] { 35453, 22809 } , new[] { 33489, 35150 }, new[] { 35453, 10279 }, new[] { 33489, 24252 }, new[] { 33489, 20832 } , new[] { 35453, 25302 }, new[] { 35453, 25529 }, new[] { 33489, 31323 }, new[] { 35453, 3418 } , new[] { 35453, 13084 }, new[] { 35453, 32521 }, new[] { 35453, 32211 }, new[] { 33489, 32959 } , new[] { 35453, 7234 }, new[] { 35453, 2957 }, new[] { 33489, 34229 }, new[] { 33489, 16813 } , new[] { 35453, 37531 } }; // Act var minArea = new MinRectangleAxisAligned3().MinAreaRect(points); // Assert Assert.AreEqual(1964, minArea); }