Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package _13_DEFINING_CLASSES.Exercise_Class._5_Car_Salesman_;
- import java.util.LinkedHashMap;
- import java.util.Map;
- import java.util.Scanner;
- import java.util.regex.Matcher;
- import java.util.regex.Pattern;
- public class Main {
- public static void main(String[] args) {
- Scanner sc = new Scanner(System.in);
- Map<String, Car> carGarage = new LinkedHashMap<>();
- Map<String, Engine> engineGarage = new LinkedHashMap<>();
- int N = Integer.parseInt(sc.nextLine());
- for (int i = 0; i < N; i++) {
- String[] input = sc.nextLine().split("\\s+");
- if (input.length == 3) {
- Pattern pattern = Pattern.compile("\\d+");
- Matcher matcher = pattern.matcher(input[2]);
- if (matcher.find()) {
- String model = input[0];
- int power = Integer.parseInt(input[1]);
- int displacement = Integer.parseInt(input[2]);
- Engine engine = new Engine(model, power, displacement);
- engineGarage.put(model, engine);
- } else {
- String model = input[0];
- int power = Integer.parseInt(input[1]);
- String efficiency = input[2];
- Engine engine = new Engine(model, power, efficiency);
- engineGarage.put(model, engine);
- }
- } else if (input.length == 4) {
- String model = input[0];
- int power = Integer.parseInt(input[1]);
- int displacement = Integer.parseInt(input[2]);
- String efficiency = input[3];
- Engine engine = new Engine(model, power, displacement, efficiency);
- engineGarage.put(model, engine);
- } else if (input.length == 2) {
- String model = input[0];
- int power = Integer.parseInt(input[1]);
- Engine engine = new Engine(model, power);
- engineGarage.put(model, engine);
- }
- }
- int M = Integer.parseInt(sc.nextLine());
- for (int i = 0; i < M; i++) {
- String[] input = sc.nextLine().split("\\s+");
- if (input.length == 3) {
- Pattern pattern = Pattern.compile("\\d+");
- Matcher matcher = pattern.matcher(input[2]);
- if (matcher.find()) {
- String model = input[0];
- String engine = input[1];
- int weight = Integer.parseInt(input[2]);
- Car car = new Car(model, engine, weight, engineGarage.get(engine).getPower(), engineGarage.get(engine).getDisplacement(), engineGarage.get(engine).getEfficiency());
- carGarage.put(model, car);
- } else {
- String model = input[0];
- String engine = input[1];
- String color = input[2];
- Car car = new Car(model, engine, color, engineGarage.get(engine).getPower(), engineGarage.get(engine).getDisplacement(), engineGarage.get(engine).getEfficiency());
- carGarage.put(model, car);
- }
- } else if (input.length == 4) {
- String model = input[0];
- String engine = input[1];
- int weight = Integer.parseInt(input[2]);
- String color = input[3];
- Car car = new Car(model, engine, weight, color, engineGarage.get(engine).getPower(), engineGarage.get(engine).getDisplacement(), engineGarage.get(engine).getEfficiency());
- carGarage.put(model, car);
- } else if (input.length == 2) {
- String model = input[0];
- String engine = input[1];
- Car car = new Car(model, engine, engineGarage.get(engine).getPower(), engineGarage.get(engine).getDisplacement(), engineGarage.get(engine).getEfficiency());
- carGarage.put(model, car);
- }
- }
- carGarage.forEach((e, s) -> {
- String car = e;
- String engine = s.getEngine();
- int power = s.getPower();
- System.out.println(car + ":");
- System.out.println(engine + ":");
- System.out.println("Power: " + power);
- if (engineGarage.get(s.getEngine()).getDisplacement() == -1) { //където липсва Displacement, съм заложил като стойност -1
- System.out.println("Displacement: n/a"); // с Weight също!
- } else {
- System.out.println("Displacement: " + s.getDisplacement());
- }
- System.out.println("Efficiency: " + s.getEfficiency());
- if (s.getWeight() == -1) {
- System.out.println("Weight: n/a");
- } else {
- System.out.println("Weight: " + s.getWeight());
- }
- System.out.println("Color: " + s.getColor());
- });
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement