給出兩個整數集合a、b,求出他們的交集、並集以及b在a中的餘集。輸入格式
第一行為乙個整數n,表示集合a中的元素個數。
第二行有n個互不相同的用空格隔開的整數,表示集合a中的元素。
第三行為乙個整數m,表示集合b中的元素個數。
第四行有m個互不相同的用空格隔開的整數,表示集合b中的元素。
集合中的所有元素均為int範圍內的整數,n、m<=1000。
輸出格式
第一行按從小到大的順序輸出a、b交集中的所有元素。
第二行按從小到大的順序輸出a、b並集中的所有元素。
第三行按從小到大的順序輸出b在a中的餘集中的所有元素。
樣例輸入
51 2 3 4 5
52 4 6 8 10
樣例輸出
2 41 2 3 4 5 6 8 10
1 3 5
樣例輸入
41 2 3 4
35 6 7
樣例輸出
1 2 3 4 5 6 7
1 2 3 4
方法一:利用stl中set有序性與查詢函式實現
#include
#include
#include
#include
using
namespace std;
int a[
1000]=
;int b[
1000]=
;set<
int> a;
set<
int> b;
vector<
int> inter;
set<
int> unio;
vector<
int> resi;
intmain()
cin >> n;
for(
int i =
0; i < n; i++
)//交集
set<
int>
::iterator it;
for(it = a.
begin()
; it!=a.
end(
); it++
)//並集
for(it = a.
begin()
; it!=a.
end(
); it++
)for
(it = b.
begin()
; it!=b.
end(
); it++
)//餘集
for(it = a.
begin()
; it!=a.
end(
); it++
)//列印
for(
int i =
0; i < inter.
size()
; i++
) cout << endl;
for(it = unio.
begin()
; it != unio.
end(
); it++)
cout << endl;
for(
int i =
0; i < resi.
size()
; i++
) cout << endl;
return0;
}
方法二:利用自帶函式求解
#include
#include
#include
#include
#include
#include
#include
using
namespace std;
vector<
int> a;
vector<
int> b;
vector<
int> c;
void
print
(vector<
int>
&c) c.
clear()
; cout<}int
main()
sort
(a.begin()
,a.end()
);cin >> n;
for(
int i =
0; i < n; i++
)sort
(b.begin()
,b.end()
);set_intersection
(a.begin()
,a.end()
,b.begin()
,b.end()
,back_inserter
(c))
;print
(c);
set_union
(a.begin()
,a.end()
,b.begin()
,b.end()
,back_inserter
(c))
;print
(c);
set_difference
(a.begin()
,a.end()
,b.begin()
,b.end()
,back_inserter
(c))
;print
(c);
}
藍橋杯 演算法訓練 集合運算
演算法訓練 集合運算 時間限制 1.0s 記憶體限制 512.0mb 問題描述 給出兩個整數集合a b,求出他們的交集 並集以及b在a中的餘集。輸入格式 第一行為乙個整數n,表示集合a中的元素個數。第二行有n個互不相同的用空格隔開的整數,表示集合a中的元素。第三行為乙個整數m,表示集合b中的元素個數...
藍橋杯 演算法訓練 集合運算
問題描述 給出兩個整數集合a b a ba b,求出他們的交集 並集以及b bb在a aa中的餘集。輸入格式 第一行為乙個整數n nn,表示集合a aa中的元素個數。第二行有n nn個互不相同的用空格隔開的整數,表示集合a aa中的元素。第三行為乙個整數m mm,表示集合b bb中的元素個數。第四行...
試題 演算法訓練 集合運算 藍橋杯
題目描述 資源限制 時間限制 1.0s 記憶體限制 512.0mb 問題描述 給出兩個整數集合a b,求出他們的交集 並集以及b在a中的餘集。輸入格式 第一行為乙個整數n,表示集合a中的元素個數。第二行有n個互不相同的用空格隔開的整數,表示集合a中的元素。第三行為乙個整數m,表示集合b中的元素個數。...