Guest User

Untitled

a guest
Nov 20th, 2018
87
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.56 KB | None | 0 0
  1. #
  2. # q1.rb
  3. #
  4. # Tested using Ruby >= 1.9.2
  5. # usage: ruby q1.rb input1.txt
  6. #
  7.  
  8. $LOAD_PATH.unshift(File.dirname(__FILE__))
  9. require "train_yard"
  10.  
  11. def print_result(question,result)
  12. puts "##{question}: #{result ||= 'NO SUCH ROUTE'}"
  13. end
  14.  
  15. puts ""
  16. puts "******************** BEGIN *************************"
  17.  
  18. raw_graph = ARGF.readline # AB5, BC4, CD8, DC8, DE6, AD5, CE2, EB3, AE7
  19. ty = TrainYard.new(:raw_graph => raw_graph, :debug => true)
  20.  
  21. # Run the 10 questions:
  22. puts "Running Mandatory Questions..."
  23. print_result(1,ty.total_distance("ABC"))
  24. print_result(2,ty.total_distance("AD"))
  25. print_result(3,ty.total_distance("ADC"))
  26. print_result(4,ty.total_distance("AEBCD"))
  27. print_result(5,ty.total_distance("AED"))
  28. print_result(6,ty.count_trips("C", "C", {:max_stops => 3}))
  29. print_result(7,ty.count_trips("A", "C", {:min_stops => 4, :max_stops => 4}))
  30. print_result(8,ty.shortest_path("A","C"))
  31. print_result(9,ty.shortest_path("B","B"))
  32. print_result(10,ty.count_trips("C", "C", {:max_distance => 29}))
  33. puts "****************************************************"
  34.  
  35. # puts "Extra Testing Questions..."
  36. # print_result("Extra1",ty.total_distance("AEBCEBCDE"))
  37. # print_result("Extra2",ty.total_distance("ACDDCAABCADECDEDCCBCEBCDE"))
  38. # print_result("Extra3",ty.total_distance("AAAAA"))
  39. # print_result("Extra4",ty.total_distance(""))
  40. # print_result("Extra5",ty.count_trips("A", "C", {:max_stops => 0}))
  41. # print_result("Extra6",ty.count_trips("B", "C", {:max_stops => 10, :max_distance =>50}))
  42. # print_result("Extra7",ty.shortest_path("B","C"))
  43. # puts ""
Add Comment
Please, Sign In to add comment