Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package definingClassesHomework.pr05SpeedRacing;
- import java.io.BufferedReader;
- import java.io.InputStreamReader;
- import java.util.LinkedHashMap;
- import java.util.Map;
- class Car {
- String model;
- double fuelAmount;
- double fuelPerKm;
- double distanceTravaled;
- public Car(String model, double fuelAmount, double fuelPerKm) {
- this.model = model;
- this.fuelAmount = fuelAmount;
- this.fuelPerKm = fuelPerKm;
- this.distanceTravaled = 0;
- }
- @Override
- public String toString() {
- return model;
- }
- }
- public class Pr05SpeedRacing {
- public static void main(String[] args) {
- try (BufferedReader reader = new BufferedReader(new InputStreamReader(
- System.in));) {
- Map<String, Car> carList = new LinkedHashMap<>();
- int numberOfLines = Integer.parseInt(reader.readLine());
- String[] inpuLine = null;
- for (int i = 0; i < numberOfLines; i++) {
- inpuLine = reader.readLine().split("\\s+");
- String carModel = inpuLine[0];
- double fuelAmount = Double.parseDouble(inpuLine[1]);
- double fuelPerKm = Double.parseDouble(inpuLine[2]);
- Car car = new Car(carModel, fuelAmount, fuelPerKm);
- carList.put(carModel, car);
- }
- inpuLine = reader.readLine().split("\\s+");
- while (!inpuLine[0].equals("End")) {
- String currCar = inpuLine[1];
- double distanceToTravel = Double.parseDouble(inpuLine[2]);
- double currCarFuelPerKm = carList.get(currCar).fuelPerKm;
- double currCarFuelAmount = carList.get(currCar).fuelAmount;
- double fuelToSpent = distanceToTravel * currCarFuelPerKm;
- if (fuelToSpent > currCarFuelAmount) {
- System.out.println("Insufficient fuel for the drive");
- } else {
- carList.get(currCar).distanceTravaled += distanceToTravel;
- carList.get(currCar).fuelAmount -= fuelToSpent;
- }
- inpuLine = reader.readLine().split("\\s+");
- }
- for (String car : carList.keySet()) {
- System.out.printf("%s %.2f %d\n", car,
- carList.get(car).fuelAmount,
- (int) carList.get(car).distanceTravaled);
- }
- } catch (Exception e) {
- e.printStackTrace();
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment