Advertisement
dzocesrce

[NP] Line Processor

Apr 13th, 2025
277
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.24 KB | None | 0 0
  1. import java.io.*;
  2. import java.util.ArrayList;
  3. import java.util.Comparator;
  4. import java.util.List;
  5. import java.util.stream.Collectors;
  6.  
  7. class LineProcessor {
  8.  
  9.     List<String> lines;
  10.  
  11.     public LineProcessor() {
  12.         lines= new ArrayList<>();
  13.     }
  14.  
  15.     public int countOcc(String line, char c){
  16.         int total=0;
  17.         for(char l : line.toCharArray()){
  18.             if(l==c)
  19.                 total++;
  20.         }
  21.         return total;
  22.     }
  23.  
  24.  
  25.     public void readLines(InputStream in, PrintStream out, char a) {
  26.         BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(in));
  27.         lines = bufferedReader.lines().map(i-> i.toLowerCase()).collect(Collectors.toList());
  28.  
  29.         Comparator<String> comparator = Comparator.comparing(str->countOcc(str,a));
  30.  
  31.         PrintWriter printWriter = new PrintWriter(out);
  32.  
  33.         String max = lines.stream().max(comparator.thenComparing(Comparator.naturalOrder())).get();
  34.         printWriter.println(max);
  35.         printWriter.flush();
  36.  
  37.     }
  38. }
  39.  
  40. public class LineProcessorTest {
  41.  
  42.     public static void main(String[] args) {
  43.         LineProcessor lineProcessor = new LineProcessor();
  44.  
  45.  
  46.         lineProcessor.readLines(System.in, System.out, 'a');
  47.     }
  48. }
  49.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement