#include<cstdio> #include<map> #include<vector> #include<algorithm> using namespace std; struct FZ { int num; int organ; }; int main() { int n; scanf("%d", &n); for (int k = 0; k < n; k++) { FZ fz[100]; vector<int> vec1; vector<int> vec2; int m; scanf("%d", &m); for (int i = 0; i < m; i++) { scanf("%d", &fz[i].num); int flag = 1; for (int x = 0; x < vec1.size(); x++) { if (fz[i].num == vec1[x]) { flag = 0; break; } } if (flag == 1) vec1.push_back(fz[i].num); } for (int i = 0; i < m; i++) { scanf("%d", &fz[i].organ); int flag = 1; for (int x = 0; x < vec2.size(); x++) { if (fz[i].organ == vec2[x]) { flag = 0; break; } } if (flag == 1) vec2.push_back(fz[i].organ); } sort(vec1.begin(), vec1.end()); sort(vec2.begin(), vec2.end()); int i, j; for (i = 0; i < vec2.size(); i++) { printf("%d={", vec2[i]); int sum = 0; for (j = 0; j < vec1.size(); j++) { sum = 0; for (int x = 0; x < m; x++) { if (fz[x].num == vec1[j] && fz[x].organ == vec2[i]) sum++; } if (j == vec1.size() - 1) break; printf("%d=%d,", vec1[j],sum); } printf("%d=%d}\n",vec1[j],sum); } } }