PTA乙级题 1090。 危险品装箱 (25 分)
【题目链接】
STL真香,暴力匹配一下就好了,注意可以一对多的情况
#include <iostream>
#include <map>
#include <vector>
#include <set>
using namespace std;
int main()
{
map<int, vector<int> >mm;
int a, b, n, m, t;
scanf("%d%d", &n, &m);
for (int i = 0; i < n; i++)
{
scanf("%d%d", &a, &b);
mm[a].push_back(b);
mm[b].push_back(a);
}
for (int l = 0; l < m; l++)
{
vector<int>v;
set<int>s;
int tt;
scanf("%d", &tt);
for (int i = 0; i < tt; i++)
{
scanf("%d", &t);
v.push_back(t);
s.insert(t);
}
for (int i = 0; i < tt; i++)
{
for (auto it = mm[v[i]].begin(); it != mm[v[i]].end(); it++)
{
if (s.find(*it) != s.end())
{
printf("No\n");
goto qwe;
}
}
}
printf("Yes\n");
qwe:;
}
}