STL find函式 集合相似度(PTA)

2021-10-21 08:40:10 字數 1269 閱讀 8396

#include

使用格式:

find(陣列的頭位址, 陣列的尾位址, 要找的數)

或者陣列.find(要找的數)

find

(nums.

begin()

, nums.

end(

), target)

vector<

int> nums =

;find

(nums,nums+5,

2)返回2的位址,若find 8,則返回第乙個8的位址

或者nums.

find

(要找的數)

返回的是target第一次出現的位址

因為end不在查詢範圍內,所以可以作為是否找到的依據

所以,如果沒有找到返回尾位址nums.end()

(如果沒有找到指出的物件,就會返回nums.end()的值,要是找到了就返回乙個指著找到的物件的iterator)

;//用set容器,將乙個集合中的重複元素刪掉

intmain

(void)}

int k,a,b;

scanf

("%d"

,&k)

;while

(k--

)//用find函式尋找此時第乙個陣列中的這個元素是否存在與第二個陣列中,若沒有則cnt++,即總的不相同的元素

}printf

("%.2lf%\n"

,cnt*

1.0/

(cntb+cnta-cnt)

*100);

}return0;

}set容器也是stl裡的,可以格外再看

集合相似度

給定兩個整數集合,它們的相似度定義為 nc nt 100 其中nc是兩個集合都有的不相等整數的個數,nt是兩個集合一共有的不相等整數的個數。你的任務就是計算任意一對給定集合的相似度。輸入格式 輸入第一行給出乙個正整數n 50 是集合的個數。隨後n行,每行對應乙個集合。每個集合首先給出乙個正整數m 1...

集合相似度

給定兩個整數集合,它們的相似度定義為 n c n t 100 其中n c 是兩個集合都有的不相等整數的個數,n t 是兩個集合一共有的不相等整數的個數。你的任務就是計算任意一對給定集合的相似度。輸入格式 輸入第一行給出乙個正整數n 50 是集合的個數。隨後n行,每行對應乙個集合。每個集合首先給出乙個...

集合相似度

給定兩個整數集合,它們的相似度定義為 n c n t 100 其中n c 是兩個集合都有的不相等整數的個數,n t 是兩個集合一共有的不相等整數的個數。你的任務就是計算任意一對給定集合的相似度。輸入第一行給出乙個正整數n 50 是集合的個數。隨後n行,每行對應乙個集合。每個集合首先給出乙個正整數m ...