Crazy

Аптека

Nov 25th, 2017
443
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 3.54 KB | None | 0 0
  1. import java.util.HashMap;
  2. import java.util.Scanner;
  3.  
  4. class Lek {
  5.  
  6.     private String ime;
  7.     private int pozL, cena, brParcinja;
  8.  
  9.     public Lek(String ime, int pozL, int cena, int brParcinja) {
  10.         this.ime = ime;
  11.         this.pozL = pozL;
  12.         this.cena = cena;
  13.         this.brParcinja = brParcinja;
  14.     }
  15.  
  16.     public String getIme() {
  17.         return ime;
  18.     }
  19.  
  20.     public void setIme(String ime) {
  21.         this.ime = ime;
  22.     }
  23.  
  24.     public int getPozL() {
  25.         return pozL;
  26.     }
  27.  
  28.     public void setPozL(int pozL) {
  29.         this.pozL = pozL;
  30.     }
  31.  
  32.     public int getCena() {
  33.         return cena;
  34.     }
  35.  
  36.     public void setCena(int cena) {
  37.         this.cena = cena;
  38.     }
  39.  
  40.     public int getBrParcinja() {
  41.         return brParcinja;
  42.     }
  43.  
  44.     public void setBrParcinja(int brParcinja) {
  45.         this.brParcinja = brParcinja;
  46.     }
  47.  
  48.     @Override
  49.     public String toString() {
  50.  
  51.         StringBuilder stringBuilder = new StringBuilder();
  52.         stringBuilder.append(ime).append("\n");
  53.  
  54.  
  55.         if (pozL == 0)
  56.             stringBuilder.append("NEG").append("\n");
  57.         else
  58.             stringBuilder.append("POZ").append("\n");
  59.  
  60.         stringBuilder.append(cena).append("\n").append(brParcinja);
  61.  
  62.         return stringBuilder.toString();
  63.     }
  64. }
  65.  
  66. class LekName{
  67.     private String ime;
  68.  
  69.     public String getIme() {
  70.         return ime;
  71.     }
  72.  
  73.     public void setIme(String ime) {
  74.         this.ime = ime;
  75.     }
  76.  
  77.     public LekName(String ime) {
  78.         this.ime = ime;
  79.     }
  80.  
  81.     @Override
  82.     public boolean equals(Object obj) {
  83.         if (obj ==null)
  84.             return false;
  85.  
  86.         if (obj.getClass() != getClass())
  87.             return false;
  88.  
  89.         LekName object = (LekName) obj;
  90.  
  91.         return ime.equals(object.ime);
  92.  
  93.     }
  94.  
  95.     @Override
  96.     public int hashCode() {
  97.         return (29*(29*(ime.charAt(0))+ime.charAt(1))+ime.charAt(2))%102780;
  98.  
  99.         /*best implementation
  100.  
  101.                 int result = 17;*/
  102.  
  103.  
  104.  
  105.     }
  106. }
  107.  
  108.  
  109. public class Apteka {
  110.  
  111.  
  112.     public static void main(String[] args) {
  113.  
  114.  
  115.         Scanner in = new Scanner(System.in);
  116.  
  117.         int N = Integer.parseInt(in.nextLine());
  118.  
  119.         HashMap< LekName, Lek> hashMap = new HashMap<>();
  120.  
  121.         for (int i =0; i <N; i++)
  122.         {
  123.  
  124.             String [] niza = in.nextLine().split(" ");
  125.             hashMap.put(new LekName(niza[0]), new Lek(niza[0], Integer.parseInt(niza[1]), Integer.parseInt(niza[2]), Integer.parseInt(niza[3])));
  126.  
  127.  
  128.  
  129.         }
  130.  
  131.  
  132.       while (in.hasNextLine())
  133.       {
  134.           String imeZaProverka = in.nextLine().toUpperCase();
  135.           if (imeZaProverka.equals("KRAJ"))
  136.               break;
  137.  
  138.           int brnaracki = Integer.parseInt(in.nextLine());
  139.  
  140.           LekName lekName = new LekName(imeZaProverka);
  141.  
  142.           if (hashMap.containsKey(lekName)) {
  143.  
  144.               Lek lek = hashMap.get(lekName);
  145.  
  146.  
  147.               if (brnaracki> lek.getBrParcinja())
  148.               {
  149.                   System.out.println("Nema dovolno lekovi");
  150.               }
  151.               else
  152.               {
  153.  
  154.                   if (lek.getPozL()==1)
  155.                   {
  156.                       lek.setBrParcinja(lek.getBrParcinja()-brnaracki);
  157.                   }
  158.  
  159.                   System.out.println(lek.toString());
  160.  
  161.                   System.out.println("Napravena naracka");
  162.  
  163.               }
  164.  
  165.  
  166.  
  167.           }
  168.           else
  169.           {
  170.               System.out.println("Nema takov lek\n");
  171.           }
  172.  
  173.  
  174.  
  175.  
  176.       }
  177.  
  178.  
  179.  
  180.  
  181.  
  182.  
  183.  
  184.  
  185.  
  186.  
  187.  
  188.     }
  189.  
  190.  
  191.  
  192.  
  193.  
  194. }
Advertisement
Add Comment
Please, Sign In to add comment