#P1469. COURSES

COURSES

题目描述

考虑一个由 NN 名学生和 PP 门课程组成的群体。每名学生可能选修零门、一门或多门课程。你的任务是判断是否能够组成一个恰好包含 PP 名学生的委员会,同时满足以下条件:

  1. 每名学生代表不同的课程(学生能代表某门课程仅当其选修了该课程)。
  2. 每门课程在委员会中有一名代表

输入格式

程序需从标准输入读取多组数据。每组数据的格式如下:

  • 第一行包含两个正整数 PPNN1P1001 \leq P \leq 1001N3001 \leq N \leq 300),分别表示课程数和学生数。
  • 接下来的 PP 行按顺序描述每门课程(从课程 11 到课程 PP)。每行描述一门课程,格式为:
    • 首先是一个整数 CountiCount_i0CountiN0 \leq Count_i \leq N),表示选修该课程的学生数量。
    • 接着是 CountiCount_i 个学生编号(范围 11NN),每两个编号间用空格分隔。

输入数据保证正确,且两组数据之间无空行。

输出格式

对于每组数据,若可以组成满足条件的委员会,输出 "YES",否则输出 "NO"。行首不应有空格。

输入样例 1

2  
3 3  
3 1 2 3  
2 1 2  
1 1  
3 3  
2 1 3  
2 1 3  
1 1  

输出样例 1

YES  
NO  

来源

Southeastern Europe 2000