网易资格赛2 第3题

描述 2010 年,有道从全国各地的高校中招来了众多的优秀人才,他们各个身怀绝技,有精通Java(J)的,有用Python(P)的,有写C++(C) 的,我们用0~50中的整数值分别表示51项不同的技能
招聘之后各个Team的Leader就开始了疯狂的抢人工作,HR今年给出了这样的规则:
a. 所有的Leader和刚入职的新员工按照HR给定的顺序站成一排,从左到右,依次编号为1~N
b. 每个Leader可以挑选任意名新员工
c. 每个新员工只能被一个Leader挑选,且必须被一个Leader选中
d. 某一个新员工如果被某一个Leader选中,那么该员工与该Leader之间的其它新员工都必须被该Leader选中
e. 如果一个新员工A与某一个Leader B之间还存在着另外一名Leader C,那么新员工A不能被Leader B选中的
f. 一个挑选需求表示:每个Leader选中的人中具备各个特定技能的人数不少于某一个值

现在你已经知道了新员工和Leader的排列顺序,每个新员工所具备的技能,以及每个Leader的挑选需求,请你求出可能的挑选方案数量。

请你求出当给定大家的排列顺序后可能的分组方法总数。 输入 第一行为一个正整数N,表示新员工和Leader的总数。
接下来的2到N+1行分别描述了每个人的属性。其中第i行,描述编号为i-1的人的属性:
该行的第一个数字为一个0或者1,1表示这个人是Leader,而0表示这个人是新员工。
如果这个人是Leader的话,该行首先包含一个整数M,表示该Leader有M个挑选需求,该行接下来的2*M个数分别表示M个挑选需求,其中每连续的两个整数C,D表示一个挑选需求,即要求掌握技能C的新员工必须达到D名。
如果这个人是新员工,则该行首先包含一个整数L,表示该新员工拥有的技能数量,接下来的L个整数表示该员工拥有的各项技能。
其中
1 <= N <= 1000, 0 <= M <= 51, 0<= C <=50, 0 <= D <= N, 0 <= L <= 51 输出 仅一个整数,表示分组方案的总数对9997取模的值。 样例输入
7
0 2 1 2
0 1 2
1 2 2 2 1 1  
0 1 2
0 1 3
1 2 2 1 4 1
0 2 2 4
样例输出
3
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值