#include<iostream> #include <set> #include <vector> using namespace std; int main() { int ICnt, RCnt; string str; cin >> ICnt; vector<string> I; for (int i = 0; i < ICnt; ++i) { cin >> str; I.push_back(str); } cin >> RCnt; set<int> R; for (int i = 0; i < RCnt; ++i) { cin >> str; R.insert(stoi(str)); } vector<int> ans; for (auto itR : R) { int cnt = 0; bool bisOk = false; for (auto itI : I) { if (itI.find(to_string(itR)) != string::npos) { ++cnt; if (!bisOk) { ans.push_back((itR)); bisOk = true; } } } if (cnt > 0) { ans.push_back(cnt); for (int i = 0; i < ICnt; ++i) { if (I[i].find(to_string(itR)) != string::npos) { ans.push_back(i); ans.push_back(stoi(I[i])); } } } } // 开始打印结果 cout << ans.size() << " "; for(auto it : ans){ cout << it << " "; } return 0; }