svetlozar_kirkov

Three Largest Numbers

Feb 6th, 2015
286
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.70 KB | None | 0 0
  1. import java.math.BigDecimal;
  2. import java.util.ArrayList;
  3. import java.util.Collections;
  4. import java.util.Scanner;
  5.  
  6. public class ThreeLargestNumbers {
  7.  
  8.     public static void main(String[] args) {
  9.         Scanner input = new Scanner(System.in);
  10.         int n = input.nextInt();
  11.         input.nextLine();
  12.         ArrayList<BigDecimal> numbers = new ArrayList<>();
  13.         for (int i = 0; i < n; i++){
  14.             String tempNum = input.nextLine();
  15.             BigDecimal temp = new BigDecimal(tempNum);
  16.             numbers.add(temp);
  17.         }
  18.         if (n == 1){
  19.             System.out.println(numbers.get(0).toPlainString());
  20.             return;
  21.         }
  22.         else if (n == 2){
  23.             BigDecimal largest = Collections.max(numbers);
  24.             System.out.println(largest.toPlainString());
  25.             for (int i = 0; i < numbers.size(); i++){
  26.                 if (numbers.get(i)==largest){
  27.                     numbers.remove(i);
  28.                     System.out.println(Collections.max(numbers).toPlainString());
  29.                     return;
  30.                 }
  31.             }
  32.         }
  33.         for (int i = 0; i < 3; i++){
  34.             BigDecimal currentLargest = Collections.max(numbers);
  35.             System.out.println(currentLargest.toPlainString());
  36.             for (int j = 0; j < numbers.size(); j++){
  37.                 if (numbers.get(j)==currentLargest){
  38.                     numbers.remove(j);
  39.                     if (numbers.size() > 0){
  40.                         currentLargest = Collections.max(numbers);
  41.                         break;
  42.                     }
  43.                     else{
  44.                         return;
  45.                     }
  46.                 }
  47.             }
  48.         }
  49.     }
  50. }
Advertisement
Add Comment
Please, Sign In to add comment