struct merry {
int b, c, cnt;
inline bool operator<(const merry a)const {
if(mp[a.b] == mp[b]) {
return mp[c] > mp[a.c];
}
return mp[b] > mp[a.b];
}
} umy[mxn];
不要在结构体的比较函数中一直读取map中的数
for(int i = 1; i <= m; i++) {
int x = read();
umy[i].b = mp[x];
umy[i].cnt= i;
}
for(int i = 1; i <= m; i++) {
int x = read();
umy[i].c = mp[x];
}
在外面直接把map中的对应值赋值给结构体,然后在结构体中直接比