HDU 5210

Description
WLD likes playing with numbers. One day he is playing with N integers. He wants to delete K integers from them. He likes diversity, so he wants to keep the kinds of different integers as many as possible after the deletion. But he is busy pushing, can you help him?

Input
There are Multiple Cases. (At MOST 100 )

For each case:

The first line contains one integer N(0<N100) .

The second line contains N integers a1,a2,...,aN(1aiN) , denoting the integers WLD plays with.

The third line contains one integer K(0K<N) .

Output
For each case:

Print one integer. It denotes the maximum of different numbers remain after the deletion.

Sample Input

4
1 3 1 2
1

Sample Output

3

Hint

if WLD deletes a 3, the numbers remain is [1,1,2],he’ll get 2 different numbers. if WLD deletes a 2, the numbers remain is [1,1,3],he’ll get 2 different numbers. if WLD deletes a 1, the numbers remain is [1,2,3],he’ll get 3 different numbers.

題意:輸出一個n 然後輸入一個 長度爲n的數組,然後輸入一個k ,如果k大於這個數組裏面數字重複的數字就輸出

System.out.println(n -num- (k - num));//num是數組不同數字的數字

反之直接輸出這個數組的不同數字的個數

思路: 貪心 水題


import java.util.Scanner;

public class Main{
    private static int n = 0, k = 0, num = 0;
    private static int[] array;
    private static int[] resArray;
    public static void main(String[] args) {
    Scanner scanner = new Scanner(System.in);
    while (scanner.hasNext()) {
        num = 0;
        n = scanner.nextInt();
        array = new int[n];
        resArray = new int[n];
        for (int i = 0; i < n; i++) {
        int temp = scanner.nextInt();
        if (judge(temp)) {
            array[i] = temp;
        } else {
            resArray[i] = temp;
            num++;
        }
        }
        k = scanner.nextInt();
        if (k <= num) {
        System.out.println(n - num);
        } else {
        System.out.println(n -num- (k - num));
        }

    }
    scanner.close();
    }

    private static boolean judge(int x) {
    for (int i = 0; i < array.length; i++) {
        if (array[i] == x) {
        return false;
        }
    }
    return true;
    }

}
發佈了41 篇原創文章 · 獲贊 119 · 訪問量 17萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章