Advertisement
Guest User

AppDate

a guest
Feb 18th, 2020
111
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.80 KB | None | 0 0
  1. package com.company;
  2.  
  3. import java.util.ArrayDeque;
  4. import java.util.Arrays;
  5. import java.util.Collections;
  6. import java.util.Scanner;
  7.  
  8. public class Main {
  9.  
  10. public static void main(String[] args) {
  11.  
  12. Scanner scanner = new Scanner(System.in);
  13. String [] male = scanner.nextLine().split(" ");
  14. String [] female = scanner.nextLine().split(" ");
  15.  
  16. ArrayDeque <Integer> maleStack = new ArrayDeque();
  17. ArrayDeque <Integer> femaleQueue = new ArrayDeque();
  18.  
  19. int countMatches = 0;
  20.  
  21. for (int i = 0; i<male.length; i++) {
  22. maleStack.push(Integer.parseInt(male[i]));
  23. }
  24.  
  25. for (int i = 0; i<female.length; i++) {
  26. femaleQueue.offer(Integer.parseInt(female[i]));
  27. }
  28.  
  29.  
  30. while (maleStack.size()>0 && femaleQueue.size() > 0) {
  31.  
  32. int malePeak = maleStack.peek();
  33. int femalePeak = femaleQueue.peek();
  34.  
  35. if (malePeak <=0 || femalePeak <=0) {
  36. if (malePeak <=0) {
  37. maleStack.pop();
  38. }
  39. if (femalePeak <=0) {
  40. femaleQueue.poll();
  41. }
  42. continue;
  43. }
  44.  
  45. if (malePeak %25==0 || femalePeak %25 ==0) {
  46.  
  47. if (malePeak % 25==0) {
  48. if (maleStack.size()>1) {
  49. maleStack.pop();
  50. maleStack.pop();
  51. } else {
  52. maleStack.pop();
  53. }
  54. }
  55. if (femalePeak % 25 == 0) {
  56. if (femaleQueue.size()>1) {
  57. femaleQueue.poll();
  58. femaleQueue.poll();
  59. } else {
  60. femaleQueue.poll();
  61. }
  62. }
  63. continue;
  64. }
  65.  
  66. if (malePeak == femalePeak) {
  67. countMatches++;
  68. maleStack.pop();
  69. femaleQueue.poll();
  70.  
  71. } else {
  72. femaleQueue.poll();
  73. malePeak -=2;
  74. maleStack.pop();
  75.  
  76. ArrayDeque <Integer> setStack = new ArrayDeque();
  77. setStack.add(malePeak);
  78.  
  79. for (int i = 0; i<maleStack.size(); i++) {
  80. int current = maleStack.pop();
  81. setStack.add(current);
  82. i--;
  83. }
  84.  
  85. maleStack = setStack;
  86. }
  87.  
  88.  
  89. }
  90.  
  91. System.out.printf("Matches: %s%n", countMatches);
  92. if (maleStack.size() == 0 && femaleQueue.size()==0) {
  93. System.out.println("Males left: none");
  94. System.out.println("Females left: none");
  95. } else if (maleStack.size()==0) {
  96. System.out.println("Males left: none");
  97. if (femaleQueue.size()>0) {
  98. System.out.print("Females left: ");
  99. for (int i = 0; i<femaleQueue.size(); i++) {
  100. if (femaleQueue.size() == 1) {
  101. System.out.print(femaleQueue.poll());
  102. } else {
  103. System.out.print(femaleQueue.poll() + ", ");
  104. i--;
  105. }
  106. }
  107. System.out.println();
  108. }
  109. } else {
  110. System.out.print("Males left: ");
  111. for (int i = 0; i<maleStack.size(); i++) {
  112. if (maleStack.size() == 1) {
  113. System.out.print(maleStack.pop());
  114. } else {
  115. System.out.print(maleStack.pop() + ", ");
  116. i--;
  117. }
  118. }
  119. System.out.println();
  120. System.out.println("Females left: none");
  121. }
  122.  
  123.  
  124. // write your code here
  125. }
  126. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement