#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std; #define lint long long int /* vectoral(26); al = {'a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z'}; vectorAL(26); AL = {'A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z'}; */ int main() { int N; cin >> N; int a;//0,1,2 int ni, mi, ci; string bi; int cnt = 0; vectorans(10000); int cnt2 = 0; vector>list(20, vector(10, "**")); for (int i = 0; i < N; i++) { cnt = 0; cin >> a; if (a == 0) { cin >> ni >> mi; for (int k = 0; k < mi; k++) { cin >> list[ni - 1][k]; } } else if (a == 1) { cin >> bi; for (int k = 0; k < 20; k++) { for (int j = 0; j < 10; j++) { if (list[k][j] == bi&&cnt==0) { list[k][j] = "**"; ans[cnt2] = k + 1; cnt++; cnt2++; } } } if (cnt == 0) { ans[cnt2] = -1; cnt2++; } } else if (a == 2) { cin >> ci; for (int k = 0; k < 10; i++) { list[ci - 1][k] = "**"; } } } int l = 0; while (ans[l] != 0) { cout << ans[l] << endl; l++; } }