Submission #2343597


Source Code Expand

#include "bits/stdc++.h"
using namespace std;
#define FOR(i,a,b) for(int i =(a);i<(b);i++)
#define REP(i,n) for(int i=0;i<(n);i++)
#define RREP(i,n) for(int i=(n)-1;i>=0;i--)
#define REPS(i,n) for(int i=1;i<=(n);i++)
#define RREPS(i,n) for(int i=(n);i>0;i--)
#define mp make_pair
#define pb(a) push_back(a)
typedef long long ll;
#define MAX_N 100000
int parent[MAX_N],r[MAX_N];

void Makeset(int n){
    REP(i,n){
        parent[i] = i;
        r[i] = 0;
    }
}

int Find(int x){
    if(parent[x] == x) return x;
    else{
        return parent[x] = Find(parent[x]);
    }
}

void Union(int x,int y){
    int xroot = Find(x);
    int yroot = Find(y);
    if(xroot == yroot) return;
    if(r[x] < r[y]){
        parent[xroot] = yroot;
    }else{
        parent[yroot] = xroot;
        if(r[xroot] == r[yroot]) r[xroot]++;
    }
}

bool isUnion(int x,int y){
    if(Find(x) == Find(y)) return true;
    else return false;
}
vector<int> v[MAX_N];
int main(){
  int N,M;
  cin >> N >> M;
  Makeset(N);
  REP(i,N){
    int K;
    cin >> K;
    REP(j,K){
      int L;
      cin >> L;
      v[L-1].pb(i);
    }
  }
  REP(j,M){
    REPS(i,(int)v[j].size()-1){
      Union(v[j][i-1],v[j][i]);
    }
  }
  bool ans = true;
  REPS(i,N-1){
    if(! isUnion(0,i)){
      ans = false;
      break;
    }
  }
  if(ans) cout << "YES" << endl;
  else cout << "NO" << endl;
  return 0;
}

Submission Info

Submission Time
Task C - Interpretation
User yankeiori
Language C++14 (GCC 5.4.1)
Score 400
Code Size 1444 Byte
Status AC
Exec Time 58 ms
Memory 4864 KB

Judge Result

Set Name sample dataset1 dataset2
Score / Max Score 0 / 0 200 / 200 200 / 200
Status
AC × 2
AC × 12
AC × 27
Set Name Test Cases
sample sample-01.txt, sample-02.txt
dataset1 sample-01.txt, sample-02.txt, 01-01.txt, 01-02.txt, 01-03.txt, 01-04.txt, 01-05.txt, 01-06.txt, 01-07.txt, 01-08.txt, 01-09.txt, 01-10.txt
dataset2 sample-01.txt, sample-02.txt, 01-01.txt, 01-02.txt, 01-03.txt, 01-04.txt, 01-05.txt, 01-06.txt, 01-07.txt, 01-08.txt, 01-09.txt, 01-10.txt, 02-01.txt, 02-02.txt, 02-03.txt, 02-04.txt, 02-05.txt, 02-06.txt, 02-07.txt, 02-08.txt, 02-09.txt, 02-10.txt, 02-11.txt, 02-12.txt, 02-13.txt, sample-01.txt, sample-02.txt
Case Name Status Exec Time Memory
01-01.txt AC 2 ms 2560 KB
01-02.txt AC 3 ms 2560 KB
01-03.txt AC 3 ms 2560 KB
01-04.txt AC 3 ms 2560 KB
01-05.txt AC 3 ms 2560 KB
01-06.txt AC 3 ms 2560 KB
01-07.txt AC 3 ms 2560 KB
01-08.txt AC 3 ms 2560 KB
01-09.txt AC 3 ms 2560 KB
01-10.txt AC 3 ms 2560 KB
02-01.txt AC 48 ms 4608 KB
02-02.txt AC 49 ms 3968 KB
02-03.txt AC 48 ms 4096 KB
02-04.txt AC 58 ms 4352 KB
02-05.txt AC 56 ms 3968 KB
02-06.txt AC 58 ms 4352 KB
02-07.txt AC 57 ms 4096 KB
02-08.txt AC 38 ms 3964 KB
02-09.txt AC 58 ms 3964 KB
02-10.txt AC 50 ms 4864 KB
02-11.txt AC 50 ms 4736 KB
02-12.txt AC 49 ms 4736 KB
02-13.txt AC 50 ms 4608 KB
sample-01.txt AC 2 ms 2560 KB
sample-02.txt AC 2 ms 2560 KB