|
|
@@ -53,16 +53,16 @@ namespace D6._1
|
|
|
{
|
|
|
for (uint i = 0; i < size; ++i)
|
|
|
{
|
|
|
- var x0yi = GetClosest(coordinates, 0, i);
|
|
|
+ var x0yi = GetClosest(coordinates, (0, i));
|
|
|
MarkInfinite(coordinates, x0yi);
|
|
|
|
|
|
- var xiy0 = GetClosest(coordinates, i, 0);
|
|
|
+ var xiy0 = GetClosest(coordinates, (i, 0));
|
|
|
MarkInfinite(coordinates, xiy0);
|
|
|
|
|
|
- var xsizeyi = GetClosest(coordinates, size, i);
|
|
|
+ var xsizeyi = GetClosest(coordinates, (size, i));
|
|
|
MarkInfinite(coordinates, xsizeyi);
|
|
|
|
|
|
- var xiysize = GetClosest(coordinates, i, size);
|
|
|
+ var xiysize = GetClosest(coordinates, (i, size));
|
|
|
MarkInfinite(coordinates, xiysize);
|
|
|
}
|
|
|
}
|
|
|
@@ -73,21 +73,21 @@ namespace D6._1
|
|
|
{
|
|
|
for (uint y = 0; y < size; y++)
|
|
|
{
|
|
|
- var closest = GetClosest(coordinates, x, y);
|
|
|
+ var closest = GetClosest(coordinates, (x, y));
|
|
|
|
|
|
area[closest]++;
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- private static int GetClosest(List<((uint x, uint y) coord, bool isInfinite)> coordinates, uint x, uint y)
|
|
|
+ private static int GetClosest(List<((uint x, uint y) coord, bool isInfinite)> coordinates, (uint x, uint y) point)
|
|
|
{
|
|
|
long lowest = int.MaxValue;
|
|
|
int lowestId = 0;
|
|
|
for (int i = 0; i < coordinates.Count; i++)
|
|
|
{
|
|
|
- var coord = coordinates[i];
|
|
|
- var manhattan = Math.Abs((int)x - (int)coord.coord.x) + Math.Abs((int)y - (int)coord.coord.y);
|
|
|
+ var (x, y) = coordinates[i].coord;
|
|
|
+ var manhattan = Math.Abs((int)point.x - (int)x) + Math.Abs((int)point.y - (int)y);
|
|
|
if (manhattan < lowest)
|
|
|
{
|
|
|
lowest = manhattan;
|