阿里国际9.23工程笔试 第一道怎么做啊
跪求大佬教教我,哎,看了一个小时都没做出来,实在意难平。如果是python就更好了。
第一道题大概意思如下:
第一行输入n个问题,m个回答。下面有m行,每一行第一个数字表示能够回答的提问数量,其后的数字表示能够回答的具体提问
现在给定每个回答所能够解决的提问,你需要选择一些回答组成一个集合,使得对于任意一个提问,你都可以从已选的回答集中至少挑出一个回答,来解决这一提问。请问你至少选出几个回答。
示例输入:
5 4
3 1 2 3
3 1 2 4
3 2 3 5
2 4 5
输出应该为:
2
第一道题大概意思如下:
第一行输入n个问题,m个回答。下面有m行,每一行第一个数字表示能够回答的提问数量,其后的数字表示能够回答的具体提问
现在给定每个回答所能够解决的提问,你需要选择一些回答组成一个集合,使得对于任意一个提问,你都可以从已选的回答集中至少挑出一个回答,来解决这一提问。请问你至少选出几个回答。
示例输入:
5 4
3 1 2 3
3 1 2 4
3 2 3 5
2 4 5
输出应该为:
2
全部评论
c++的话用位运算来计算并集,再用整数大小比较来确定是否包含所有问题,再遍历选择的所有非空子集求最小子集就行了
相关推荐
昨天 01:26
佳木斯大学 Java 点赞 评论 收藏
分享
11-01 17:40
门头沟学院 护士 点赞 评论 收藏
分享