Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
06/26/17 15:19:25 (7 years ago)
Author:
pfleck
Message:

#2705 merged r14478, r14481, r14482, r14504 to stable

Location:
stable
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • stable

  • stable/HeuristicLab.Problems.Instances.VehicleRouting/3.4/SolomonFormat/SolomonFormatInstanceProvider.cs

    r14186 r15066  
    2121
    2222using System;
    23 using System.Collections.Generic;
     23using System.Globalization;
    2424using System.IO;
    2525using System.Linq;
     
    6464        string date = ExtractValue(reader.ReadLine());
    6565        string reference = ExtractValue(reader.ReadLine());
    66         reader.ReadLine(); // Solution
    67 
    68         var routesQuery =
    69           from line in reader.ReadAllLines()
    70           where !string.IsNullOrEmpty(line)
    71           let tokens = ExtractValue(line).Split(new[] { ' ' }, StringSplitOptions.RemoveEmptyEntries)
    72           let stops = tokens.Select(int.Parse).Select(s => s - 1)
    73           select stops;
    74 
    75         var routes = routesQuery.Select(s => s.ToArray()).ToArray();
    76 
    77         instance.BestKnownTour = routes;
     66        switch (reader.ReadLine().Trim()) { // "Solution" or "Distance"
     67          case "Solution":
     68            var routesQuery = from line in reader.ReadAllLines()
     69                              where !string.IsNullOrEmpty(line)
     70                              let tokens = ExtractValue(line).Split(new[] { ' ' }, StringSplitOptions.RemoveEmptyEntries)
     71                              let stops = tokens.Select(int.Parse).Select(s => s - 1)
     72                              select stops;
     73            var routes = routesQuery.Select(s => s.ToArray()).ToArray();
     74            instance.BestKnownTour = routes;
     75            break;
     76          case "Distance":
     77            double quality = double.Parse(reader.ReadLine(), CultureInfo.InvariantCulture);
     78            instance.BestKnownQuality = quality;
     79            break;
     80        }
    7881      }
    7982    }
Note: See TracChangeset for help on using the changeset viewer.