题目大意:有n个学生分别想从学校a[i]交换到b[i],但是,只有当所有人都有自己partner时,才能成功交换
分析:对两组数据进行排序即可,只有当排序后,两组数据一模一样才输出YES
代码:
#include <iostream>
#include <cstdio>
#include <cstring>
#include <map>
#include <algorithm>
using namespace std;
const int maxn = 555555;
int n, a[maxn], b[maxn];
int main() {
while(scanf("%d", &n) && n) {
for(int i = 0; i < n; i++)
scanf("%d%d", &a[i], &b[i]);
sort(a, a+n);
sort(b, b+n);
int flag = 0;
for(int i = 0; i < n; i++) {
if(a[i] != b[i]) {
flag = 1;
break;
}
}
if(flag) printf("NO\n");
else printf("YES\n");
}
return 0;
}