Skip to content

Commit 48d077e

Browse files
committed
Merge pull request #46 from munificent/master
Prettify Dart version
2 parents adae7f8 + 35a2338 commit 48d077e

File tree

1 file changed

+22
-26
lines changed

1 file changed

+22
-26
lines changed

dart.dart

Lines changed: 22 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -1,53 +1,50 @@
11
import 'dart:io';
2-
import 'dart:math' as Math;
2+
import 'dart:math' as math;
33

44
class Route {
55
final int dest, cost;
6-
76
Route(this.dest, this.cost);
87

98
String toString() => "$dest $cost\n";
109
}
1110

12-
class Node{
13-
final List<Route> neighbours = new List<Route>();
14-
15-
Node();
11+
class Node {
12+
final neighbours = <Route>[];
1613
}
1714

1815
void readPlacesAndFindPath() {
19-
List<String> lines = new File('agraph').readAsLinesSync();
20-
int numNodes = int.parse(lines[0]);
21-
List nodes = new List<Node>.generate(numNodes, (int index) => new Node());
16+
var lines = new File('agraph').readAsLinesSync();
17+
var numNodes = int.parse(lines[0]);
18+
var nodes = new List.generate(numNodes, (_) => new Node());
2219

23-
for(int i = 1; i < lines.length; i++){
24-
List nums = lines[i].split(' ');
25-
int node = int.parse(nums[0]);
26-
int neighbour = int.parse(nums[1]);
27-
int cost = int.parse(nums[2]);
20+
for (var i = 1; i < lines.length; i++) {
21+
var nums = lines[i].split(' ');
22+
var node = int.parse(nums[0]);
23+
var neighbour = int.parse(nums[1]);
24+
var cost = int.parse(nums[2]);
2825

29-
nodes[node].neighbours.add(new Route(neighbour,cost));
26+
nodes[node].neighbours.add(new Route(neighbour, cost));
3027
}
3128

3229
var visited = new List<bool>.generate(numNodes, (int index) => false);
3330
var start = new DateTime.now();
34-
int len = getLongestPath(nodes, 0, visited);
31+
var len = getLongestPath(nodes, 0, visited);
3532
var duration = new DateTime.now().difference(start);
3633

3734
print("$len LANGUAGE Dart ${duration.inMilliseconds}");
3835
}
3936

40-
int getLongestPath(List<Node> nodes, int nodeID, List<bool> visited){
37+
int getLongestPath(List<Node> nodes, int nodeID, List<bool> visited) {
4138
visited[nodeID] = true;
42-
int max = 0;
43-
final List<Route> neighbors = nodes[nodeID].neighbours;
44-
for (var i = 0, llen = neighbors.length; i < llen; i++) {
45-
final Route neighbor = neighbors[i];
46-
final int dest = neighbor.dest;
39+
var max = 0;
40+
var neighbors = nodes[nodeID].neighbours;
41+
var neighborsLength = neighbors.length;
42+
for (var i = 0; i < neighborsLength; i++) {
43+
var neighbor = neighbors[i];
44+
var dest = neighbor.dest;
4745
if (!visited[dest]) {
48-
final int dist = neighbor.cost +
49-
getLongestPath(nodes, dest, visited);
50-
max = Math.max(dist, max);
46+
var dist = neighbor.cost + getLongestPath(nodes, dest, visited);
47+
max = math.max(dist, max);
5148
}
5249
}
5350

@@ -59,4 +56,3 @@ int getLongestPath(List<Node> nodes, int nodeID, List<bool> visited){
5956
void main() {
6057
readPlacesAndFindPath();
6158
}
62-

0 commit comments

Comments
 (0)