藍橋杯:蒜頭君的隨機數(java)
阿新 • • 發佈:2018-12-13
package lanqiaobei; import java.util.*; /* 練習題:蒜頭君的隨機數 蒜頭君想在學校中請一些同學一起做一項問卷調查,為了確保實驗的客觀性,他先用計算機生成了 n(1≤n≤100)個 1 到 1000 之間的隨機整數,對於其中重複的數字,只保留一個,把其餘相同的數去掉,不同的數對應著不同的學生的學號。然後再把這些數從小到大排序,按照排好的順序去找同學做調查。 請你協助蒜頭君完成“去重”與“排序”的工作。 輸入格式 共兩行,第一行為一個正整數 n。 第二行有 n 個用空格隔開的正整數,為所產生的隨機數。 輸出格式 第一行輸出一個正整數 m,表示不相同的隨機數的個數。第二行輸出 m 個用空格隔開的正整數,為從小到大排好序的不相同的隨機數。 樣例輸入 10 20 40 32 67 40 20 89 300 400 15 樣例輸出 8 15 20 32 40 67 89 300 400 */ public class SRandom { public static void main(String[] args) { Scanner sc=new Scanner(System.in); int n=sc.nextInt(); List<Integer> res=new ArrayList<>(); for (int i = 0; i <n ; i++) { int r=sc.nextInt(); if (res.contains(r))continue; res.add(r); } Collections.sort(res); System.out.println(res.size()); for (int i = 0; i <res.size() ; i++) { System.out.print(res.get(i)+" "); } } }