Advertisement
Guest User

Untitled

a guest
May 27th, 2018
79
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 4.30 KB | None | 0 0
  1. import java.util.Scanner;
  2. public class HuxleyCode {
  3.  
  4.     public static void main(String[] args) {
  5.          Scanner input = new Scanner(System.in);
  6.             Lista filaUm = new Lista();
  7.             Lista filaDois = new Lista();
  8.             String filarestaurante1;
  9.             String filarestaurante2;
  10.            
  11.             filarestaurante1 = input.nextLine();
  12.             String restaurante1[] = filarestaurante1.split(":");
  13.             String restauranteUm = restaurante1[0];
  14.             String pratoUm = restaurante1[1];
  15.            
  16.             filarestaurante2 = input.nextLine();
  17.             String restaurante2[] = filarestaurante2.split(":");
  18.             String restauranteDois = restaurante2[0];
  19.             String pratoDois = restaurante2[1];
  20.            
  21.             while(input.hasNextLine()){
  22.                
  23.                 String line = input.nextLine();
  24.                 String aluno = "";
  25.                 String restaurante = "";
  26.                 String alunoNome[];
  27.                
  28.                 if (line.contains(":")){
  29.                 String[] lines = line.split(":");
  30.                 aluno       = lines[0];
  31.                 restaurante = lines[1];
  32.                 }
  33.                 else if (!line.contains(":")){
  34.                 aluno = line;
  35.                 restaurante = "";
  36.                 }
  37.                
  38.                 if (restaurante.equals(pratoUm)) {
  39.                     filaUm.inserir(aluno);
  40.                     System.out.println(aluno + " foi para a fila do " + restauranteUm);
  41.                 }else if(restaurante.equals(pratoDois)) {
  42.                     filaDois.inserir(aluno);
  43.                     System.out.println(aluno + " foi para a fila da " + restauranteDois);
  44.                 } else if(restaurante.equals("")) {
  45.                     if (filaUm.quantos(aluno, 0) > filaDois.quantos(aluno, 0)) {
  46.                         filaDois.inserir(aluno);
  47.                         System.out.println(aluno + " foi para a fila do " + restauranteUm);
  48.                     } else if (filaDois.quantos(aluno, 0) > filaUm.quantos(aluno, 0)) {
  49.                         filaDois.inserir(aluno);
  50.                         System.out.println(aluno + " foi para a fila da " + restauranteDois);
  51.                     } else {
  52.                     filaDois.inserir(aluno);
  53.                     System.out.println(aluno + " foi para a fila da " + restauranteDois);
  54.                     }
  55.                 }
  56.                
  57.                 if (line.contains("SAIU")) {
  58.                
  59.                 if (restaurante.equals(restauranteUm)) {
  60.                     if (filaUm.isEmpty()) {
  61.                             System.out.println("Nao ha mais ninguem para comer aqui");
  62.                         } else {
  63.                         filaUm.remover();
  64.                         System.out.println(filaUm.remover() + " almocou no " + restauranteUm + " e esta voltando para aula");
  65.                         }
  66.                            
  67.                 }else if(restaurante.equals("AREA2")) {
  68.                 if (filaDois.isEmpty()) {
  69.                     System.out.println("Nao ha mais ninguem para comer aqui");
  70.                 } else {
  71.                 filaDois.remover();
  72.                 System.out.println(filaDois.remover() + " almocou na " + restauranteDois + " e esta voltando para aula");
  73.                 }
  74.                    
  75.                 }
  76.                 }
  77. }
  78. }
  79. }
  80.  
  81. class Lista {
  82.    
  83.     private String alunoFila = null;
  84.     private Lista proximo = null;
  85.     private int contador = 0;
  86.     private String pessoa = null;
  87.    
  88.     public boolean isEmpty() {
  89.         return this.alunoFila == null;
  90.     }
  91.     public void inserir(String alunoFila) {
  92.         if(isEmpty()) {
  93.             this.alunoFila = alunoFila;
  94.             this.proximo = new Lista();
  95.         } else
  96.             this.proximo.inserir(alunoFila);
  97.     }
  98.     public boolean existe(String alunoFila) {
  99.         if(isEmpty()) {
  100.             return false;
  101.         } else if(!isEmpty() && this.alunoFila.equals(alunoFila)) {
  102.             return true;
  103.         } else if (this.proximo == null)
  104.             return false;
  105.        
  106.         return proximo.existe(alunoFila);
  107.     }  
  108.     public String remover() {
  109.         if (!isEmpty()){
  110.             pessoa = this.alunoFila;
  111.             this.alunoFila = this.proximo.alunoFila;
  112.             this.proximo = this.proximo.proximo;
  113.         } else if (this.proximo != null)
  114.             this.proximo.remover();
  115.            
  116.             return pessoa;
  117.     }
  118.     public int quantos(String alunoFila, int contador) {
  119.         if (!isEmpty() && alunoFila.equals(alunoFila))
  120.             contador++;
  121.         if (this.proximo != null)
  122.             return this.proximo.quantos(alunoFila, contador);
  123.  
  124.         return contador;
  125.     }
  126.     }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement