Если оставить первую часть - не проходит по 5 пункту. Если с HashSet, то пункты 3 и 5....
package com.javarush.task.task08.task0826;
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.HashSet;
/*
Пять победителей
*/
public class Solution {
public static void main(String[] args) throws Exception {
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
int[] array = new int[20];
for (int i = 0; i < array.length; i++) {
array[i] = Integer.parseInt(reader.readLine());
}
sort(array);
System.out.println();
System.out.println(array[0]);
System.out.println(array[1]);
System.out.println(array[2]);
System.out.println(array[3]);
System.out.println(array[4]);
}
public static void sort(int[] array) {
//напишите тут ваш код
for (int i = 0; i < array.length; i++) {
for (int j = 1; j < array.length; j++) {
if (array[j] > array[j - 1]) {
int temp = array[j];
array[j] = array[j - 1];
array[j - 1] = temp;
}
}
}
HashSet<Integer> set = new HashSet<>();
for (int i = 0; i < array.length; i++) {
set.add(array[i]); // Убираем повторяющиеся числа
}
Integer[] array1 = set.toArray(new Integer[set.size()]);
for (int i = 0; i < array1.length; i++) {
for (int j = 1; j < array1.length; j++) {
if (array1[j] > array1[j - 1]) {
int temp = array1[j];
array1[j] = array1[j - 1];
array1[j - 1] = temp;
}
}
}
for (int i = 0; i < 5; i++) {
array[i] = array1[i]; }
}
}