图 (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
原创