Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- this.inputFile = inputFile;
- int counter = 0, nodePos1, nodePos2, spending;
- try {
- BufferedReader reader = new BufferedReader(new FileReader(inputFile));
- reader.readLine();
- startingNode = Integer.parseInt(reader.readLine());
- endNode = Integer.parseInt(reader.readLine());
- width = Integer.parseInt(reader.readLine());
- length = Integer.parseInt(reader.readLine());
- initialMoney = Integer.parseInt(reader.readLine());
- toll = Integer.parseInt(reader.readLine());
- gain = Integer.parseInt(reader.readLine());
- String line = reader.readLine();
- graph = new Graph(length*width);
- nodes = new Node[length*width];
- String[][] map = new String[length*2 -1][width*2-1];
- for (int i = 0; i < map.length ; i++) {
- for (int j = 0; j < map[i].length ; j++) {
- map[i][j] = String.valueOf(line.charAt(j));
- }
- line = reader.readLine();
- }
- for (int i = 0; i < map.length ; i+=2) {
- for (int j = 0; j < map[i].length; j+=2) {
- map[i][j] = Integer.toString(counter);
- nodes[counter] = new Node(counter);
- counter++;
- }
- }
- for (int i = 0; i < map.length; i++) {
- if (i % 2 ==0){
- for (int j = 1; j < map[i].length; j+=2) {
- if (map[i][j].equals("T")){
- spending = 1;
- } else if (map[i][j].equals("C")){
- spending = -1;
- } else {
- spending = 0;
- }
- nodePos1 = Integer.parseInt(map[i][j-1]);
- nodePos2 = Integer.parseInt(map[i][j+1]);
- graph.insertEdge(nodes[nodePos1], nodes[nodePos2], spending);
- }
- } else {
- for (int j = 0; j < map[i].length; j+=2) {
- if (map[i][j].equals("T")){
- spending = 1;
- } else if (map[i][j].equals("C")){
- spending = -1;
- } else {
- spending = 0;
- }
- nodePos1 = Integer.parseInt(map[i-1][j]);
- nodePos2 = Integer.parseInt(map[i+1][j]);
- graph.insertEdge(nodes[nodePos1], nodes[nodePos2], spending);
- }
- }
- }
- reader.close();
- } catch (Exception e) {
- e.printStackTrace();
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement