Advertisement
stelaIv

Untitled

Jun 25th, 2016
810
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 5.40 KB | None | 0 0
  1. package com.company.CarSalesMan;
  2.  
  3. import java.io.BufferedReader;
  4. import java.io.IOException;
  5. import java.io.InputStreamReader;
  6. import java.util.LinkedList;
  7.  
  8. public class Main {
  9.     public static void main(String[] args) throws IOException {
  10.         BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
  11.         int n = Integer.parseInt(reader.readLine());
  12.         LinkedList<Engine>engines = new LinkedList<>();
  13.         LinkedList<Car>cars = new LinkedList<>();
  14.         for (int i = 0; i < n; i++) {
  15.             String[]engine = reader.readLine().split(" ");
  16.             String model = engine[0];
  17.             int power = Integer.parseInt(engine[1]);
  18.             Engine engine1 =null;
  19.  
  20.             if (engine.length==4){
  21.                 String displacement = engine[2];
  22.                 String efficiency = engine[3];
  23.                 engine1=new Engine(model,power,displacement,efficiency);
  24.             }else if(engine.length==3){
  25.                 if (isNum(engine[2])){
  26.                     engine1 = new Engine(model,power,engine[2],"n/a");
  27.                 }else{
  28.                     engine1 = new Engine(model,power,"n/a",engine[2]);
  29.                 }
  30.             }else{
  31.                 engine1 = new Engine(model,power);
  32.             }
  33.             engines.add(engine1);
  34.         }
  35.         int m = Integer.parseInt(reader.readLine());
  36.        
  37.         for (int i = 0; i < m; i++) {
  38.             Car car = null;
  39.             String[]carsInput = reader.readLine().split(" ");
  40.             String model = carsInput[0];
  41.             String engineName = carsInput[1];
  42.             Engine engine = null;
  43.             for (Engine engine1 : engines) {
  44.                 if (engine1.getModel().equals(engineName)){
  45.                     engine=engine1;
  46.                     break;
  47.                 }
  48.             }
  49.             if (carsInput.length==4){
  50.                 String weight = carsInput[2];
  51.                 String color = carsInput[3];
  52.                 car = new Car(model,engine,weight,color);
  53.             }else if(carsInput.length==3){
  54.                 if (isNum(carsInput[2])){
  55.                     String weight = carsInput[2];
  56.                     car=new Car(model,engine,weight,"n/a");
  57.                 }else{
  58.                     String color = carsInput[2];
  59.                     car=new Car(model,engine,"n/a",color);
  60.                 }
  61.             }else{
  62.                 car=new Car(model,engine);
  63.             }
  64.             cars.add(car);
  65.         }
  66.  
  67.         for (Car car : cars) {
  68.             System.out.println(car.toString());
  69.         }
  70.     }
  71.  
  72.     private static boolean isNum(String s) {
  73.         try{
  74.             Integer.parseInt(s);
  75.             return true;
  76.         }catch (NumberFormatException ex){
  77.             return false;
  78.         }
  79.     }
  80. }
  81. //Car
  82. package com.company.CarSalesMan;
  83.  
  84. public class Car {
  85.     private String model;
  86.     private Engine engine;
  87.     private String weight;
  88.     private String color;
  89.  
  90.     public Car(String model, Engine engine, String weight, String color) {
  91.         this.model = model;
  92.         this.engine = engine;
  93.         this.weight = weight;
  94.         this.color = color;
  95.     }
  96.  
  97.     public Car(String model, Engine engine) {
  98.         this(model,engine,"n/a","n/a");
  99.         this.model = model;
  100.         this.engine = engine;
  101.     }
  102.  
  103.     public String getModel() {
  104.         return model;
  105.     }
  106.  
  107.     public void setModel(String model) {
  108.         this.model = model;
  109.     }
  110.  
  111.     public Engine getEngine() {
  112.         return engine;
  113.     }
  114.  
  115.     public void setEngine(Engine engine) {
  116.         this.engine = engine;
  117.     }
  118.  
  119.     public String getWeight() {
  120.         return weight;
  121.     }
  122.  
  123.     public void setWeight(String weight) {
  124.         this.weight = weight;
  125.     }
  126.  
  127.     public String getColor() {
  128.         return color;
  129.     }
  130.  
  131.     public void setColor(String color) {
  132.         this.color = color;
  133.     }
  134.  
  135.     @Override
  136.     public String toString() {
  137.         Engine eng = this.getEngine();
  138.        return String.format("%s:%n  %s:%n    Power: %s%n    Displacement: %s%n    Efficiency: %s%n  Weight: %s%n  Color: %s",
  139.                 this.model,eng.getModel(),eng.getPower(),eng.getDisplacement(),eng.getEfficiency(),this.weight,this.color);
  140.     }
  141. }
  142. //Engine
  143. package com.company.CarSalesMan;
  144.  
  145. public class Engine {
  146.     private String model;
  147.     private int power;
  148.     private String displacement;
  149.     private String efficiency;
  150.  
  151.     public Engine(String model, int power, String displacement, String efficiency) {
  152.         this.model = model;
  153.         this.power = power;
  154.         this.displacement = displacement;
  155.         this.efficiency = efficiency;
  156.     }
  157.  
  158.     public Engine(String model, int power) {
  159.         this(model,power,"n/a","n/a");
  160.         this.model = model;
  161.         this.power = power;
  162.     }
  163.  
  164.     public String getModel() {
  165.         return model;
  166.     }
  167.  
  168.     public void setModel(String model) {
  169.         this.model = model;
  170.     }
  171.  
  172.     public int getPower() {
  173.         return power;
  174.     }
  175.  
  176.     public void setPower(int power) {
  177.         this.power = power;
  178.     }
  179.  
  180.     public String getDisplacement() {
  181.         return displacement;
  182.     }
  183.  
  184.     public void setDisplacement(String displacement) {
  185.         this.displacement = displacement;
  186.     }
  187.  
  188.     public String getEfficiency() {
  189.         return efficiency;
  190.     }
  191.  
  192.     public void setEfficiency(String efficiency) {
  193.         this.efficiency = efficiency;
  194.     }
  195. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement