洛谷 P3879. 阅读理解
原题链接
中等
作者:
我是java同学
,
2024-01-26 17:55:48
,
所有人可见
,
阅读 34
#include <bits/stdc++.h>
using namespace std;
const int N = 1010;
int n, m;
int main() {
scanf("%d", &n);
unordered_map<string, vector<int>> h;
for (int i = 1; i <= n; i ++ ) {
int s;
cin >> s;
for (int j = 0; j < s; j ++ ) {
string str;
cin >> str;
h[str].push_back(i);
}
}
scanf("%d", &m);
while (m -- ) {
string str;
cin >> str;
//t记录上一个变量,用来去重,因为vector自带顺序
for (int i = 0, t = -1; i < h[str].size(); i ++ ) {
int id = h[str][i];
if (t == id) continue;
cout << id << ' ';
t = id;
}
cout << endl;
}
return 0;
}