NKOI3747Pets宠物L1ngYi

暂时没写关于拓补排序和不下降序列的专题…先把这道码量巨大的题写出来,免得忘了…

第一行输入两个数字n和m,分别表示学姐有n只宠物,其中被分到一队的宠物有m只。接下来n行每行n个数字,ai,j表示第i只宠物是否能战胜第j只宠物,保证ai,i=0且ai,j=!aj,i。接下来一行m个数字,表示有哪些宠物被分到了一队。

如果两支队伍均不能让xxxxxyt满意,则输出“NO”;否则输出“YES”,并输出一个最大的k,使得从二队中非任意地抽出k只宠物放入一队后,两支队伍仍然满足条件。详细格式见样例输出。

3201100100031

YES1

430101001110010000123

NO

42010100111001000012

注意:宠物们的实力是相对的,也就是可能会出现A战胜B,B战胜C,C又战胜A的情况。数据范围:20%的数据1<=m

首先要明白,如果想要一个明确的排列顺序,不可能存在A>BB>CC>A的,这不是一个合法的线性排列。

那么,把战胜关系转换成有向图,这种不合法的排列就是一个环的形状。

如何判环,并且如果没有环的情况下能得出一个合法的排列?

这样就不难想到用拓补排序来解决了。(然而考试的时候并没想到,用深搜判环…炸的一塌糊涂…)

因为要分成两组队列,那么就需要把这张图根据队列成员来分开。

通过bool数组实现A序列和B序列的区分,分别单独统计在自己成员内的入度,然后进行拓补排序。

因为拓补排序的删边操作会破坏原图,所以在拓补前先备份一张原图。

如果存在有节点无法拓补排序,即存在环,那么输出NO结束程序。

否则进入第二个问题。

假定A序列长度为m。我们需要知道,序列B的成员i能插入序列A的第j位置,需要满足如下条件:

Aj+1、Aj+2…Am

并且,Bi在Ai的插入位置j必须保持不下降,即不能破坏B的原序列顺序。

那么,这题就又转换到了最长不下降子序列长度问题了。求出每个Bi的插入位置,然后将所得的序列求最长不下降子序列。这样即保证了插入数量最多,又保证了序列没有和B序列冲突。

THE END
1.梦幻西游:双龙大决战!2个半小时,收益有点猛啊!经验加成、储备金、补血补蓝药品、变身卡、高属性召唤兽、锦衣优惠券等丰厚奖励,助你赢在起跑线上,尽量体验梦幻乐趣! 0级:"答题卡,2个小时物理伤害+30点" 10级:净水甘露(20000血),经验20000 15级:普通海星2小时变身,30%经验加成2小时 20级:飞行符30张,经验50000,储备金20000 ...https://news.17173.com/content/11112024/035107760.shtml
2.梦幻西游手游道具链100环详解文档信息主题解析文档铃声的经验和金钱奖励。环,除了“任务完成”的温馨提示,你什么也得不到。甚至系统频道也不愿意显示至少一行文本。2. 运行物品环多少级才能获得100 A:要获得100级的书铁奖励,首先人物等级必须在90级以上,服务器等级必须在100级以上。当然梦幻西游手游花豆,就算满足了这两个条件,也不一定能最终拿到100级书铁的奖励...https://m.18183.com/iphone/xinwen/4452443.html
3.大侠立志传介绍游戏问答体质拳,因为是五维拳法,伤害平常般,可是他的殊效以致伤害比平常的六德拳法伤害都高。https://www.9game.cn/wenda/600393_2.html
4.宫颈软化80到100要多长时间问答频道宫颈软化80到100要多久 共1个回答 白玉青 副主任医师 去挂号 首都医科大学附属北京地坛医院 三甲 妇产科 正常情况下在没有怀孕时,女性的宫颈是长2到3个厘米左右,而且质地是比较坚韧的。在怀孕后,特别是到了孕晚期宫颈可能逐渐的软化,宫颈管会逐渐的缩小,是由于胎先露的压迫还有羊膜囊的直接压迫,还有晚期有的...https://m.bohe.cn/ask/toutiao/oqke0a2xsckm26n.html
5.鹦鹉介绍体重:80至100克 亚历山大鹦鹉(学名:Psittacula eupatria)是亚洲最大的长尾鹦鹉,共有5种亚种,身长依照不同亚种为56~62厘米,体重198 ~ 258克。[1]分布地区十分广阔,横跨数个国家,野生鸟栖息于海拔900米以下各种干燥与潮湿的地方,包括森林、农作物区、红树林、椰子园等地。外表有点类似环颈鹦鹉,但是体型明显大的...https://www.meipian.cn/28ulc7a1
1.幼儿园语言绘本教案15篇2、能根据经验大胆想象,用绘画方式记录表达下雨天的情景。 3、感受色彩带来的乐趣,体验想象的美好。 活动重点: 自主阅读绘本,尝试创编用“如果下起XX雨,···”来讲述下雨带来的优美意境。 活动难点: 能根据经验大胆想象,用绘画方式记录表达想象中下雨天的情景。 活动准备:...https://www.yuwenmi.com/jiaoan/youeryuan/3891563.html
2.Java蓝桥杯蓝桥杯java一个8×8的棋盘上有一个马初始位置为(a,b),他想跳到(c,d),问是否可以?如果可以,最少要跳几步? 输入格式 一行四个数字a,b,c,d。 输出格式 如果跳不到,输出-1;否则输出最少跳到的步数。 样例输入 1 1 2 3 样例输出 1 数据规模和约定 https://blog.csdn.net/weixin_45040144/article/details/130669406
3.最终幻想14巴哈姆特大迷宫邂逅篇5层图文攻略网络游戏游戏攻略6.对于拥有宠物的玩家,要根据事先商量好的打法,及时控制宠物移动走位; ※注意:不是被奇数次火球瞄准的人往火焰流里跳,而是被火球瞄准的人往奇数次火焰流里跳! ※奇数次火焰流:3人分摊时爆炸时间约28秒,4人分摊时约为24秒,每1层带火约合4秒左右;偶数次火焰流:3人分摊时约14秒,4人分摊时约12秒,5人分摊...https://www.jb51.net/gonglue/222228_all.html