代码求条(P7302 模板库应用2-模板题3)

rt,0 分代码。

#include <algorithm>
#include <cstdio>
#include <set>

int main(void)
{
	int n;
	std::set <int> sets[10];
	scanf("%d", &n);
	
	for (int i = 0; i < n; i++)
	{
		int op, x, y;
		
		scanf("%d %d", &op, &x);
		
		switch (op)
		{
		case 1:
			scanf("%d", &y);
			sets[x].insert(y);
			break;
			
		case 2:
			scanf("%d", &y);
			sets[x].erase(y);
			break;
			
		case 3:
			scanf("%d", &y);
			std::set_union(sets[x].begin(), sets[x].end(), sets[y].begin(), sets[y].end(), std::inserter(sets[x], sets[x].begin()));
			sets[y].clear();
			break;
			
		case 4:
			scanf("%d", &y);
			std::set_intersection(sets[x].begin(), sets[x].end(), sets[y].begin(), sets[y].end(), std::inserter(sets[x], sets[x].begin()));
			sets[y].clear();
			break;
			
		case 5:
			scanf("%d", &y);
			if (sets[x].find(y) != sets[x].end())
			{
				printf("Yes\n");
			}
			else
			{
				printf("No\n");
			}
			break;
			
		case 6:
			printf("%d\n", sets[x].size());
			break;
		}
	}
	
	return 0;
}

样例能过。

1 个赞

@wangyueran2024

1 个赞
#include <algorithm>
#include <cstdio>
#include <set>

int main(void)
{
	int n;
	std::set <int> sets[10];
	scanf("%d", &n);
	
	for (int i = 0; i < n; i++)
	{
		int op, x, y;
		std::set <int> tmp;
		
		scanf("%d %d", &op, &x);
		
		switch (op)
		{
		case 1:
			scanf("%d", &y);
			sets[x].insert(y);
			break;
			
		case 2:
			scanf("%d", &y);
			sets[x].erase(y);
			break;
			
		case 3:
			scanf("%d", &y);
			std::set_union(sets[x].begin(), sets[x].end(), sets[y].begin(), sets[y].end(), std::inserter(tmp, tmp.begin()));
			sets[x] = tmp;
			sets[y].clear();
			break;
			
		case 4:
			scanf("%d", &y);
			std::set_intersection(sets[x].begin(), sets[x].end(), sets[y].begin(), sets[y].end(), std::inserter(tmp, tmp.begin()));
			sets[x] = tmp;
			sets[y].clear();
			break;
			
		case 5:
			scanf("%d", &y);
			if (sets[x].find(y) != sets[x].end())
			{
				printf("Yes\n");
			}
			else
			{
				printf("No\n");
			}
			break;
			
		case 6:
			printf("%d\n", sets[x].size());
			break;
		}
	}
	
	return 0;
}
1 个赞

大佬能给题面吗?