實驗7 Problem B STL 集合運算

2022-05-09 09:30:10 字數 1762 閱讀 8339

集合的運算就是用給定的集合去指定新的集合。設a和b是集合,則它們的並差交補集分別定義如下:

a∪b=

a∩b=

a-b=

sa =

sb =

第一行輸入乙個正整數t,表示總共有t組測試資料。(t<=200)

然後下面有2t行,每一行都有n+1個數字,其中第乙個數字是n(0<=n<=100),表示該行後面還有n個數字輸入。

對於每組測試資料,首先輸出測試資料序號,」case #.no」,

接下來輸出共7行,每行都是乙個集合,

前2行分別輸出集合a、b,接下5行來分別輸出集合a、b的並(a u b)、交(a n b)、差(a – b)、補。

集合中的元素用「{}」擴起來,且元素之間用「, 」隔開。

1 4 1 2 3 1 0

case# 1: a = b = {} a u b = a n b = {} a - b = sa = {} sb =

//在中存在求交並補集的函式

set_union

set_intersection
set_difference
我是從這個**上搜到的,可以借鑑一下!

存在一種標頭檔案#include包含了所有c++標頭檔案。但有些oj不能使用。

#include#include

#include

using

namespace

std;

void print(const

set &t)

"<}int

main()

cin>>k;

for(j=0;j)

cout

<<"

a = ";

print(a);

cout

<<"

b = ";

print(b);

set_union(a.begin(), a.end(), b.begin(), b.end(), inserter(tmp1, tmp1.begin()));

cout

<<"

a u b = ";

print(tmp1);

set_intersection(a.begin(), a.end(), b.begin(), b.end(), inserter(tmp2, tmp2.begin()));

cout

<<"

a n b = ";

print(tmp2);

set_difference(a.begin(), a.end(), b.begin(), b.end(), inserter(t***, t***.begin()));

cout

<<"

a - b = ";

print(t***);

set_difference(tmp1.begin(), tmp1.end(), a.begin(), a.end(), inserter(tmp4, tmp4.begin()));

cout

<<"

sa = ";

print(tmp4);

set_difference(tmp1.begin(), tmp1.end(), b.begin(), b.end(), inserter(tmp5, tmp5.begin()));

cout

<<"

sb = ";

print(tmp5);

}return0;

}

實驗7 演算法

完成教材 演算法 章節內容知識驗證。驗證理論演算法部分迭代 遞迴等 從而體會演算法的實現過程,學會將簡單問題轉換成用電腦程式求解。相比於人腦,計算機更加擅長自動處理重複性的任務。這電腦程式中,這種重複被稱為迭代。下面,我們將展示乙個迭代演算法的經典例子 判斷素數。素數的定義是只有1和它本身兩個因數的...

實驗資料集概況

1789張影象 包含6類object clock,lamp desk lamp faucet,outlet,switch,sign 類別數量 物體數量 訓練集數量 訓練集物體數量 測試集數量 測試集物體數量 測試集物體數量 訓練集物體數量 clock 404440 333360 7180 0.22 ...

實驗7 按鍵單模組實驗

用esp32和按鍵模組,通過矩陣法來實現對矩陣鍵盤的按鍵讀取 1.連線esp32和按鍵模組的引腳 2.觸控按鍵,esp32獲取到所觸控的按鍵數字,並列印到串列埠監視器中 1.esp32 wroom 32d 開發板 2.3 4按鍵模組 3.杜邦線 1 連線引腳 3 4矩陣鍵盤 引腳依次為 7 6 5 ...