蚂蚁感冒蓝桥杯

博客探讨了一道关于蚂蚁在直杆上爬行并传播感冒的问题。当蚂蚁相遇时,它们会传染感冒并改变方向。通过分析,可以简化问题,忽略蚂蚁掉头,将其视为直接擦肩并传染感冒。解决方案分为两种情况:1. 没有相对行进的蚂蚁,只有初始感冒蚂蚁染病;2. 有相对行进的蚂蚁,导致更多蚂蚁染病。最终结果可能是1或特定数量的蚂蚁染病。
摘要由CSDN通过智能技术生成

长100厘米的细长直杆子上有n只蚂蚁。它们的头有的朝左,有的朝右。

每只蚂蚁都只能沿着杆子向前爬,速度是1厘米/秒。

当两只蚂蚁碰面时,它们会同时掉头往相反的方向爬行。

这些蚂蚁中,有1只蚂蚁感冒了。并且在和其它蚂蚁碰面时,会把感冒传染给碰到的蚂蚁。

请你计算,当所有蚂蚁都爬离杆子时,有多少只蚂蚁患上了感冒。

如果按照题意,总是想着蚂蚁碰头后往回走,那么他们整体的轨迹将变得杂乱无章,而且要考虑相对运动,很是麻烦

然而思考一下,按照题意理解当蚂蚁碰面时,蚂蚁都被感冒传染了并且掉头走,那么这两只蚂蚁有什么差异呢? 完全没有差异(速度,方向,感冒一模一样)那么这两只蚂蚁可以看作等价的,可以认为他们只是擦肩而过并且感冒传染了。

如此以来,完全可以忽略蚂蚁碰头后往回走这个要求,题目就变成了:每只蚂蚁只是从一个起点朝一个方向走到头,如果相遇,就会感染,并且不会掉头,一直沿着一个方向走。

那么就有以下两种情况:

1.在初始感冒的蚂蚁身前没有相对而行的蚂蚁,那么最后只会有初始蚂蚁感冒。

2.在初始感冒的蚂蚁身前,有相对而行的蚂蚁会传染感冒的,然后相对而行的蚂蚁感染继续向前行进,他也会感染与他方向不同的蚂蚁

最终结果:

要么就是1

要么就是(在初始感冒的蚂蚁身前相对而行的蚂蚁数量)+(在初始感冒的蚂蚁身后同向而行的蚂蚁数量)+(初始感冒的蚂蚁)。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值