84471 - 图的定义Ⅰ

图 (graph) 是一个二元组 G=(V(G), E(G)).其中 V(G) 是非空集,称为 点集 (vertex set),对于 V 中的每个元素,我们称其为 顶点 (vertex) 或 节点 (node),简称 点;E(G) 为 V(G) 各结点之间边的集合,称为 边集 (edge set).

若 G 为无向图,则 E 中的每个元素为一个无序二元组 (u, v),称作 无向边 (undirected edge),简称 边 (edge),其中 u, v \in V.设e = (u, v),则 u 和 v 称为 e 的 端点 (endpoint).

若 G 为有向图,则 E 中的每一个元素为一个有序二元组 (u, v),有时也写作 u \to v,称作 有向边 (directed edge) 或 弧 (arc),在不引起混淆的情况下也可以称作 边 (edge).设 e = u \to v,则此时 u 称为 e 的 起点 (tail),v 称为 e 的 终点 (head),起点和终点也称为 e 的 端点 (endpoint).并称 u 是 v 的直接前驱,v 是 u 的直接后继.

给出图的点集 V(G) 和边集E(G),问着这个图是否满足图的定义。

输入

输入第一行包含两个数字n,m

第二行包含n个字符串,表示点集。

接下来m行,表示边集,每行表示一条边。每行包含两个字符串,代表(u,v)

输出

输出YES或者NO,表示这个图是否满足定义

样例

输入

3 3
a b c
a b
a c
b c

输出

YES

提示

0 \leq n,m \leq 100

每个字符串长度不会超过10

来源

原创

时间限制 1 秒
内存限制 128 MB
讨论 统计
上一题 下一题