问题 D: D

问题 D: D

时间限制: 1 Sec  内存限制: 128 MB
提交: 182  解决: 74
[状态] [讨论版] [提交] [命题人:]
题目描述

小L最近在设计一个权限系统,权限系统具有有若干种不同的权限和若干种角色。用户和角色均可以拥有若干种权限,用户也可以拥有多种角色,若用户具有某种角色,将继承角色的所有权限。

输入

输入有多组数据,遇到EOF结束。
每组数据第一行为两个正整数N、M, 其中N(N<=30)代表系统总共的权限数目,M(M<=5000)代表有M次操作。
接下来是K行,每行首先输入一个数字OP。
若OP为1,则之后是两个正整数A、B,代表将权限A授予用户B。
若OP为2,则之后是两个正整数A、B,代表将权限A授予角色B。
若OP为3,则之后是两个正整数A、B,代表将角色A授予用户B。
若OP为4,则之后是两个正整数A、B,代表询问用户A当前时刻是否拥有权限B,请输出yes或者no。
PS: 对于数字A,B若代表权限则小于等于N, 否则小于等于100。
为简单起见,将角色授予用户时,用户仅获得当前时刻角色拥有的权限,角色之后获取的权限不用继承。

输出

对于OP为4的操作,输出对应的答案。

样例输入 Copy
5 6
1 1 1
4 1 1
2 2 1
3 1 1
4 1 2
4 1 3
样例输出 Copy
yes
yes
no