Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.util.*;
- public class Hospital {
- public static void main(String[] args) {
- Scanner scanner = new Scanner(System.in);
- LinkedHashMap<String, TreeMap<Integer, LinkedList<String>>> depRooms = new LinkedHashMap<>();
- TreeMap<String, TreeSet<String>> docPat = new TreeMap<>();
- int numOfRoom = 1;
- String line = scanner.nextLine();
- while (!line.equals("Output")) {
- String[] parts = line.split(" ");
- String depatrment = parts[0];
- String doctor = parts[1] + " " + parts[2];
- String patient = parts[3];
- docPat.putIfAbsent(doctor, new TreeSet<>());
- docPat.get(doctor).add(patient);
- depRooms.putIfAbsent(depatrment, new TreeMap<>());
- depRooms.get(depatrment).putIfAbsent(numOfRoom, new LinkedList<>());
- if (depRooms.containsKey(depatrment)) {
- if (depRooms.get(depatrment).size() <= 20) {
- if (depRooms.get(depatrment).get(numOfRoom).size() <= 3) {
- depRooms.get(depatrment).get(numOfRoom).add(patient);
- } else {
- numOfRoom++;
- depRooms.get(depatrment).get(numOfRoom).add(patient);
- }
- }
- }
- line = scanner.nextLine();
- }
- String command = scanner.nextLine();
- while (!command.equals("End")) {
- String[] parts = command.split(" ");
- if (parts.length == 1 && depRooms.containsKey(parts[0])) {
- TreeMap<Integer, LinkedList<String>> curr = new TreeMap<>();
- curr = depRooms.get(parts[0]);
- for (LinkedList<String> value : curr.values()) {
- for (String s : value) {
- System.out.println(s);
- }
- }
- } else if (parts.length != 1 && depRooms.containsKey(parts[0])) {
- TreeMap<Integer, LinkedList<String>> curr = new TreeMap<>();
- curr = depRooms.get(parts[0]);
- LinkedList<String> curr1 = new LinkedList<>();
- curr1 = curr.get(Integer.parseInt(parts[1]));
- curr1.stream().sorted((a, b) -> a.compareTo(b)).forEach(System.out::println);
- }else if( docPat.containsKey(command)) {
- docPat.get(command).forEach(System.out::println);
- }
- command = scanner.nextLine();
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement