p1059明明的隨機數兩種方法

2021-08-31 13:50:09 字數 918 閱讀 3909

原題**

在做這道題的時候剛開始想到的方法是初始化乙個陣列 然後將重複的數跳過 但是發現需要用捅排的思想來判斷有沒有出現過那個數 所以就出現了兩種輸出方式 但是核心思想都是開桶:

#include

using

namespace std;

intmain()

cout

int i=

0;i<

1000

;i++

)}

第二種是把x存到乙個陣列b[i]中去 然後因為初始化過 如果不等於0 就輸出 **如下:

#include

using

namespace std;

intmain()

cout

(b,b+n)

;for

(int j=

0;j<

1000

;j++

)}

還有大佬的第三種方法

#include

using

namespace std;

set<

int> s;

intmain()

cout

auto it=s.

begin()

;it!=s.

end(

);it++

) cout<<

*it<<

" ";

}

看到以前我寫的看不懂  現在更新一下  這裡利用了set的自動去重和自動從小到大排序的特性

做這一道題再合適不過了,這個是c++定義中的容器,想遍歷和輸出的話需要用到迭代器!~

P1059 明明的隨機數

題目描述 明明想在學校中請一些同學一起做一項問卷調查,為了實驗的客觀性,他先用計算機生成了n個1到1000之間的隨機整數 n 100 對於其中重複的數字,只保留乙個,把其餘相同的數去掉,不同的數對應著不同的學生的學號。然後再把這些數從小到大排序,按照排好的順序去找同學做調查。請你協助明明完成 去重 ...

P1059 明明的隨機數

題目描述 明明想在學校中請一些同學一起做一項問卷調查,為了實驗的客觀性,他先用計算機生成了nn個11到10001000之間的隨機整數 n 100 n 100 對於其中重複的數字,只保留乙個,把其餘相同的數去掉,不同的數對應著不同的學生的學號。然後再把這些數從小到大排序,按照排好的順序去找同學做調查。...

P1059 明明的隨機數

明明想在學校中請一些同學一起做一項問卷調查,為了實驗的客觀性,他先用計算機生成了nn個11到10001000之間的隨機整數 n 100 n 100 對於其中重複的數字,只保留乙個,把其餘相同的數去掉,不同的數對應著不同的學生的學號。然後再把這些數從小到大排序,按照排好的順序去找同學做調查。請你協助明...