Advertisement
Guest User

Untitled

a guest
Feb 21st, 2019
100
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.05 KB | None | 0 0
  1. package DemoSimple.Task1;
  2.  
  3.  
  4. import java.io.BufferedReader;
  5. import java.io.IOException;
  6. import java.io.InputStreamReader;
  7. import java.util.*;
  8.  
  9.  
  10. public class Main {
  11. public static void main(String[] args) throws IOException {
  12. BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
  13.  
  14.  
  15. LinkedList<String> roomMembers = new LinkedList<>();
  16. HashMap<String, List<String>> doctors = new HashMap<String, List<String>>();
  17. HashMap<String,LinkedList<String>> hospital = new HashMap<String, LinkedList<String>>();
  18.  
  19.  
  20. String input = reader.readLine();
  21. while (!input.equals("Output")){
  22. String [] tokens = input.split("\\s+");
  23.  
  24. String department = tokens[0];
  25. String doctor = tokens[1] + " " + tokens[2];
  26. String patient = tokens[3];
  27. doctors.putIfAbsent(doctor, new ArrayList<>());
  28. hospital.putIfAbsent(department, new LinkedList<>());
  29.  
  30. if (hospital.get(department).size()<=60) {
  31. doctors.get(doctor).add(patient);
  32. hospital.get(department).add(patient);
  33. }
  34. input =reader.readLine();
  35. }
  36. String output = reader.readLine();
  37.  
  38. while (!output.equals("End")){
  39. if (hospital.containsKey(output)) {
  40. for (String set : hospital.keySet()) {
  41. if (output.equals(set)) {
  42. for (String s : hospital.get(set)) {
  43. System.out.println(s);
  44. }
  45. }
  46. }
  47. } else if(doctors.containsKey(output)) {
  48. for (String doctor : doctors.keySet()) {
  49. Collections.sort(doctors.get(doctor));
  50. if (doctor.equals(output)) {
  51. for (String s : doctors.get(doctor)) {
  52. System.out.println(s);
  53. }
  54. }
  55. }
  56. } else {
  57. String[] tokens = output.split(" ");
  58. String depatment = tokens[0];
  59. int room = Integer.parseInt(tokens[1]);
  60. if (room>=1&&room<=20) {
  61. for (String dep : hospital.keySet()) {
  62. if (dep.equals(depatment)) {
  63. int start = (room * 3) - 2;
  64. int end = (room * 3);
  65. for (int i = start; i <= end; i++) {
  66. if (!hospital.get(dep).get(i - 1).isEmpty()) {
  67. roomMembers.add(hospital.get(dep).get(i - 1));
  68. }
  69. }
  70. }
  71. }
  72. Collections.sort(roomMembers);
  73. for (String roomMember : roomMembers) {
  74. System.out.println(roomMember);
  75. }
  76. }
  77. }
  78. output = reader.readLine();
  79. }
  80. }
  81. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement