题目描述
信奥班中一共有 n 个学生。这 n 个学生里一共有 m 对朋友关系。在流感发作期,每个健康学生都要看望当天他生病的朋友(如果有的话),并在第二天被传染上疾病(除非他在免疫期内);每个生病的学生在第二天都会痊愈,并在这一天具有免疫性。从第三天起,看望生病的朋友将再次使他染上流感。初始时(第一天),只有一个学生患有流感。试问多少天后流感会自动结束。
输入
第一行输入两个正整数 n 和 m。
接下来 m 行每行两个正整数 x,y,表示编号为 x 的学生和编号为 y 的学生是一对朋友。
输入数据保证每一对朋友关系只描述一次。
最后一行输入一个正整数,代表初始时患有流感的学生的编号。
输出
如果流感永远不会结束,请输出-1,否则输出多少天后流感会结束。
答案保证不超过 2 000 000 000。
样例输入
4 4 1 2 2 3 3 4 2 4 1
样例输出
3
提示
样例说明
第一天 1 号学生生病,2 号学生访问他;
第二天 2 号学生生病,其它三个学生访问他,由于 1 号处于免疫期,未患流感;
第三天 3、4 号学生生病,2 号学生访问他们。
第四天 3、4 号学生痊愈,流感结束。
数据范围
n,m<=100 000。
解题思路:
使用算法:图论+模拟
算法分析:
将s[0]设为免疫期 将s[1]设为传染期 将s[2]设为痊愈期 将s[3]设为感染期
加上动态数组

博客探讨了一种基于图论和模拟的方法来解决信奥班中流感传播的问题。初始时,只有一个学生患病,而其他健康学生会在每天看望生病的朋友后可能被传染。通过模拟学生之间的朋友关系和疾病状态变化,确定流感在多久后会结束,或者是否永远不会结束。样例解释了疾病如何在学生间传播并最终结束的过程。问题规模限制为n, m <= 100,000。"
119755717,5689052,8MSaaS:集中采购策略的优势与实施,"['采购管理', '供应链管理', '企业资源规划', '自动化工具', '云技术']
最低0.47元/天 解锁文章
918

被折叠的 条评论
为什么被折叠?



