这个题有个坑的地方,就是一个人可以在这个宇宙中多次出现,也就是说这个宇宙的数据人数可能很多,但是一直都是这个人,那么这个宇宙仍然会毁灭,自己刚开始只是想用个数据记录一下出现次数,如果绝对值相同出现了两次就不可能毁灭宇宙,但是显然跟刚刚说的矛盾了,最后才想起来,这题只能直接判断是一个数的相反数是否出现了。
AC代码:
#include <iostream>
#include <cstring>
#include <cstdio>
#include <cmath>
#include <algorithm>
using namespace std;
const int maxn=1e5+6;
int mp[maxn];
int main(){
int n,m;
cin>>n>>m;
bool is=false;
for(int i=1;i<=m;i++){
int num,x,flag=1;
cin>>num;
memset(mp,0,sizeof(mp));
while(num--){
cin>>x;
if(mp[abs(x)]==-x)flag=0;
else mp[abs(x)]=x;
}
if(flag)is=true;
}
if(is)cout<<"YES"<<endl;
else cout<<"NO"<<endl;
}