fork download
  1. import java.util.*;
  2.  
  3. class prog {
  4. public static void main(String[] args) {
  5. Scanner scanner = new Scanner(System.in);
  6.  
  7. // Citim textul emailului
  8. StringBuilder emailTextBuilder = new StringBuilder();
  9. while (scanner.hasNextLine()) {
  10. String line = scanner.nextLine();
  11. if (line.isEmpty()) {
  12. break; // Oprim citirea dacă întâlnim o linie goală
  13. }
  14. emailTextBuilder.append(line).append(" ");
  15. }
  16. String emailText = emailTextBuilder.toString();
  17.  
  18. // Divizăm textul în cuvinte și numărăm aparițiile fiecărui cuvânt
  19. Map<String, Integer> wordCount = new HashMap<>();
  20. String[] words = emailText.split("\\s+");
  21. for (String word : words) {
  22. wordCount.put(word, wordCount.getOrDefault(word, 0) + 1);
  23. }
  24.  
  25. // Găsim cuvântul cu cele mai multe apariții
  26. String mostFrequentWord = "";
  27. int maxCount = 0;
  28. for (Map.Entry<String, Integer> entry : wordCount.entrySet()) {
  29. String word = entry.getKey();
  30. int count = entry.getValue();
  31. if (count > maxCount || (count == maxCount && word.compareTo(mostFrequentWord) < 0)) {
  32. mostFrequentWord = word;
  33. maxCount = count;
  34. }
  35. }
  36.  
  37. // Afișăm rezultatul
  38. System.out.println(mostFrequentWord);
  39.  
  40. scanner.close();
  41. }
  42. }
  43.  
Success #stdin #stdout 0.16s 54648KB
stdin
This is  simple email with a repeated word word.
stdout
This