【題目】
已知兩個整數陣列f和g,它們的元素都已經從小到大排列。例如f中可能有1,2,2,3,3,g中有1,2,2,2,3。
請寫乙個程式,算出這兩個陣列彼此之間有多少組相同的資料。就以上例而言:
f[0]於g[0]是第一組;
f[1]於g[1]是第二組;
f[2]於g[2]是第三組;
f[3]於g[4]是第四組。
【輸入】
第一行為兩個整數m, n(1≤m, n≤1000),分別代表陣列f, g的長度。
第二行有m個元素,為陣列f。
第三行有n個元素,為陣列g。
【輸出】
輸出等值數目。
【輸入樣例】
5 51 2 2 2 3
1 2 2 3 3
【輸出樣例】
4【分析】
關鍵點是"元素都已經從小到大排列好",將兩個陣列,一起遍歷就可以解決問題
#include
#include
intmain()
for(i=
0;i) i=j=k=0;
while
(ielse
/*避免重複*/
}printf
("%d\n"
,k);
return0;
}
【注意】
剛開始我做這個題的時候,看錯了題意,認為是兩個陣列裡一一對應,相同位置的數字一樣才算一組,結果oj平台一直提示答案錯誤。
第二次,在改正完之後,仍然不對,這一次存在的問題是我沒有注意到陣列但是從大到小順序排列的,我寫的**有很多重複。最後,結果深思熟慮,才總算寫出來了。
剛開始,還感覺這道題很簡單,所以想當然了,這告訴我們要腳踏實地呀,不能 「 膨脹了 」!!!
【寄語】
用自己的努力證明,你一點也不比別人差!!!
1226 等值數目
題目描述 已知兩個整數陣列f和g,它們的元素都已經從小到大排列。例如f中可能有1,2,2,3,3,g中有1,2,2,2,3。請寫乙個程式,算出這兩個陣列彼此之間有多少組相同的資料。就以上例而言 f 0 於g 0 是第一組 f 1 於g 1 是第二組 f 2 於g 2 是第三組 f 3 於g 4 是第...
1918 等值數目
已知兩個整數陣列f和g,它們的元素都已經從小到大排列。例如f中可能有 1,2,2,3,3,g中有1,2,2,2,3。請寫乙個程式,算出這兩個陣列彼此之間有多少組相同的資料。就以上例而言 f 0 於g 0 是第一組 f 1 於g 1 是第二組 f 2 於g 2 是第三組 f 3 於g 4 是第四組。第...
演算法4 1 1 29等值鍵
為 binarysearch 類新增乙個靜態方法 rank 它接受乙個鍵和乙個整型有序陣列 可能存在重複鍵 作為引數並返回陣列中小於該鍵的元素數量,以及乙個類似的方法 count 來返回陣列中等於該鍵的元素的數量。注意 如果1和j分別是rank key,a 和count key,a 的返回值,那麼 ...