Advertisement
Guest User

Untitled

a guest
Jan 25th, 2015
182
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.59 KB | None | 0 0
  1. import java.util.Scanner;
  2.  
  3. class MinMax<T extends Comparable<T>>{
  4.    
  5.     private T min;
  6.     private T max;
  7.     private int s;
  8.     private int minCount;
  9.     private int maxCount;
  10.    
  11.     public MinMax(){
  12.         min = null;
  13.         max = null;
  14.         s=0;
  15.         minCount = 0;
  16.         maxCount = 0;
  17.     }
  18.    
  19.     public void update(T element){
  20.        
  21.         if(min == null&&max == null)
  22.         {
  23.             min = element;
  24.             max = element;
  25.            
  26.             minCount++;
  27.             maxCount++;
  28.             s++;
  29.         }
  30.         else{
  31.             s++;
  32.        
  33.             if(element.equals(max))
  34.                 maxCount++;
  35.            
  36.             if(element.equals(min))
  37.               minCount++;
  38.            
  39.         if(element.compareTo(max) > 0){
  40.         maxCount = 1;
  41.         max = element;
  42.         }
  43.        
  44.         if(element.compareTo(min) < 0){
  45.             minCount = 1;
  46.             min = element;
  47.         }
  48.         }
  49.        
  50.        
  51.     }
  52.    
  53.     public T max(){
  54.         return max;
  55.     }
  56.    
  57.     public T min(){
  58.         return min;
  59.     }
  60.    
  61.     @Override
  62.     public String toString() {
  63.     StringBuilder sb = new StringBuilder();
  64.    
  65.     sb.append(min+" ");
  66.     sb.append(max+" ");
  67.     sb.append(s-minCount-maxCount);
  68.     sb.append("\n");
  69.     return sb.toString();
  70.     }
  71. }
  72.  
  73.  
  74. public class MinAndMax {
  75.     public static void main(String[] args) throws ClassNotFoundException {
  76.         Scanner scanner = new Scanner(System.in);
  77.         int n = scanner.nextInt();
  78.         MinMax<String> strings = new MinMax<String>();
  79.         for(int i = 0; i < n; ++i) {
  80.             String s = scanner.next();
  81.             strings.update(s);
  82.         }
  83.         System.out.println(strings);
  84.         MinMax<Integer> ints = new MinMax<Integer>();
  85.         for(int i = 0; i < n; ++i) {
  86.             int x = scanner.nextInt();
  87.             ints.update(x);
  88.         }
  89.         System.out.println(ints);
  90.     }
  91. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement