Advertisement
Guest User

Untitled

a guest
Jun 21st, 2016
349
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.13 KB | None | 0 0
  1. package definingClassesHomework.P5_SpeedRacing;
  2.  
  3. import java.io.BufferedReader;
  4. import java.io.IOException;
  5. import java.io.InputStreamReader;
  6. import java.util.TreeMap;
  7.  
  8. /**
  9. * Created by Johny Bravo on 06/21/16.
  10. */
  11. class Car {
  12. String carModel;
  13. double fuelAmount;
  14. double fuelCostFor1Km;
  15. int distanceTraveled = 0;
  16.  
  17. public Car(String carModel, double fuelAmount, double fuelCostFor1Km) {
  18. this.carModel = carModel;
  19. this.fuelAmount = fuelAmount;
  20. this.fuelCostFor1Km = fuelCostFor1Km;
  21. }
  22. public boolean canCarMove(int kmToDrive){
  23. double fuelSpended = kmToDrive * fuelCostFor1Km;
  24. if (fuelAmount >= fuelSpended) {
  25. fuelAmount -= fuelSpended;
  26. distanceTraveled+= kmToDrive;
  27. return true;
  28. }
  29. return false;
  30. }
  31. }
  32.  
  33. public class Main {
  34. public static void main(String[] args) throws IOException {
  35. BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
  36. int carsAmount = Integer.parseInt(reader.readLine());
  37.  
  38. TreeMap<String,Car> cars = new TreeMap<>();
  39.  
  40. for (int i = 0; i < carsAmount; i++) {
  41. String[] line = reader.readLine().split("\\s+");
  42.  
  43. String carModel = line[0];
  44. double fuel = Double.parseDouble(line[1]);
  45. double fuelCostPerKm = Double.parseDouble(line[2]);
  46. cars.put(carModel, new Car(carModel, fuel, fuelCostPerKm));
  47. }
  48. while (true) {
  49. String line = reader.readLine();
  50. if (line.equals("End")) {
  51. break;
  52. }
  53. String[] lineArr = line.split("\\s+");
  54.  
  55. String carModelToDrive = lineArr[1];
  56. int kmToDrive = Integer.parseInt(lineArr[2]);
  57. if (cars.get(carModelToDrive).canCarMove(kmToDrive) == false) {
  58. System.out.println("Insufficient fuel for the drive");
  59. }
  60. }
  61.  
  62. for (Car car : cars.values()) {
  63. System.out.printf("%s %s %d%n",car.carModel,String.format("%.2f", car.fuelAmount),car.distanceTraveled);
  64. }
  65. }
  66. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement