Advertisement
Guest User

Untitled

a guest
Dec 6th, 2019
110
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.81 KB | None | 0 0
  1. this.inputFile = inputFile;
  2. int counter = 0, nodePos1, nodePos2, spending;
  3. try {
  4. BufferedReader reader = new BufferedReader(new FileReader(inputFile));
  5. reader.readLine();
  6. startingNode = Integer.parseInt(reader.readLine());
  7. endNode = Integer.parseInt(reader.readLine());
  8. width = Integer.parseInt(reader.readLine());
  9. length = Integer.parseInt(reader.readLine());
  10. initialMoney = Integer.parseInt(reader.readLine());
  11. toll = Integer.parseInt(reader.readLine());
  12. gain = Integer.parseInt(reader.readLine());
  13. String line = reader.readLine();
  14. graph = new Graph(length*width);
  15. nodes = new Node[length*width];
  16. String[][] map = new String[length*2 -1][width*2-1];
  17. for (int i = 0; i < map.length ; i++) {
  18. for (int j = 0; j < map[i].length ; j++) {
  19. map[i][j] = String.valueOf(line.charAt(j));
  20. }
  21. line = reader.readLine();
  22. }
  23. for (int i = 0; i < map.length ; i+=2) {
  24. for (int j = 0; j < map[i].length; j+=2) {
  25. map[i][j] = Integer.toString(counter);
  26. nodes[counter] = new Node(counter);
  27. counter++;
  28. }
  29. }
  30. for (int i = 0; i < map.length; i++) {
  31. if (i % 2 ==0){
  32. for (int j = 1; j < map[i].length; j+=2) {
  33. if (map[i][j].equals("T")){
  34. spending = 1;
  35. } else if (map[i][j].equals("C")){
  36. spending = -1;
  37. } else {
  38. spending = 0;
  39. }
  40. nodePos1 = Integer.parseInt(map[i][j-1]);
  41. nodePos2 = Integer.parseInt(map[i][j+1]);
  42. graph.insertEdge(nodes[nodePos1], nodes[nodePos2], spending);
  43. }
  44. } else {
  45. for (int j = 0; j < map[i].length; j+=2) {
  46. if (map[i][j].equals("T")){
  47. spending = 1;
  48. } else if (map[i][j].equals("C")){
  49. spending = -1;
  50. } else {
  51. spending = 0;
  52. }
  53. nodePos1 = Integer.parseInt(map[i-1][j]);
  54. nodePos2 = Integer.parseInt(map[i+1][j]);
  55. graph.insertEdge(nodes[nodePos1], nodes[nodePos2], spending);
  56. }
  57. }
  58. }
  59. reader.close();
  60. } catch (Exception e) {
  61. e.printStackTrace();
  62. }
  63. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement