Ejemplo n.º 1
0
    public static int GetDistance(Location a, Location b)
    {
        LocationDistance distance = LocationDistances.FirstOrDefault(x =>
                                                                     x.LocationA == a && x.LocationB == b || x.LocationA == b && x.LocationB == a);

        return(distance == null ? 0 : distance.Distance);
    }
Ejemplo n.º 2
0
        public int GetShortestDistance(string input)
        {
            var locations = GetLocations(input);
            var distances = new LocationDistance();

            foreach (var lines in input.Split(Environment.NewLine))
            {
                var parts = lines.Split(" ");

                var firstLocation  = parts[0];
                var secondLocation = parts[2];
                var value          = long.Parse(parts[^ 1]);
Ejemplo n.º 3
0
        public LocationDistance GetFarthestFrom(Coordinate coordinate, IEnumerable <Location> locations)
        {
            var locationDistance = new LocationDistance()
            {
                Distance = double.MinValue
            };

            foreach (var location in locations)
            {
                var d = SphericalDistance(coordinate, location.Coordinate);

                if (d != 0 && d > locationDistance.Distance)
                {
                    locationDistance.Location = location;
                    locationDistance.Distance = d;
                }
            }

            return(locationDistance);
        }