解题思路:
思路:看看图 有什莫想法
黑色代表 首只感冒蚂蚁 红色代表 会感冒蚂蚁 蓝色代表 不会感冒
蚂蚁向碰头 都转向 可看作 都不转向 看成擦肩而过
图 1 2 为一般情况 3 4 为特殊情况 仔细想想 或画图 看看
(两只蚂蚁相遇各自反向可以看作是两只蚂蚁分别继续前进,
然后假如感冒蚂蚁向左行,则会感染它左边所有向右行的蚂蚁,因为它继续向左行,
别感染的第一只蚂蚁继续向右行,感染所有它右边向左行的蚂蚁。)
原文(含有模拟和非模拟版) 欢迎访问 我的博客
注意事项:
参考代码:
#include<stdio.h> int abss(int s)//取绝对值 { if(s<0)return -s; else return s; } int main() { int qans=0,hans=0,n,i,gm,s; scanf("%d",&n); scanf("%d",&gm);//gm 首个感冒蚂蚁 位值 for(i=1;i<n;i++) { scanf("%d",&s); if(abss(gm)<abss(s)&&s<0)hans++;//当在首个蚂蚁右侧并且反向 必感冒 if(abss(gm)>abss(s)&&s>0)qans++;//当在首个蚂蚁左侧并且正向 必感冒 } if(gm>0&&hans!=0||gm<0&&qans!=0)printf("%d",qans+hans+1); else printf("1");//当首个感冒蚂蚁方向为正时 在首个蚂蚁右侧并且反向 为 0 或 return 0; //当首个感冒蚂蚁方向为负时 在首个蚂蚁左侧并且反向 为 0 则不会被感冒除首个感冒 }
0.0分
68 人评分
被感染的蚂蚁没有感染力吗? 同样是感冒的蚂蚁
医药行业应用 2024-09-22 15:45:18 |
题目只说了一只蚂蚁有感染能力,没说其它有感染力就不把问题复杂化
这个题目为什么是三个蚂蚁感染 8 -10 12 -20 25 25谁追的上,一直往右走离开了都没感染上。
一起闹〆朱瑞晗 2020-02-01 19:00:26 |
8 -10 -20 三只
20物联网3班刘帅甫 2021-04-17 21:38:06 |
应该是8 -10 12 这三只
20物联网3班刘帅甫 2021-04-17 21:53:20 |
准确来说
xueboss 2021-04-27 17:13:17 |
@FengYaYe 8 -10 20 才对
xueboss 2021-04-27 17:14:39 |
@FengYaYe 看错了,12
如果第一只往右并且右边没有东西,右边没有往左的,那么第一只左边同向也不会感染不是么
C语言一菜鸟级 2019-01-26 00:14:02 |
嗯嗯 就是这个意思
假币问题 (C++代码)(向上取整的一种处理方式)浏览:1802 |
C语言程序设计教程(第三版)课后习题8.3 (C语言代码)浏览:677 |
校门外的树 (C语言代码)浏览:751 |
C语言程序设计教程(第三版)课后习题3.7 (C语言代码)浏览:607 |
【回文数(二)】 (C语言代码)浏览:940 |
高精度加法 (C++代码)(大数加法)浏览:1008 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:400 |
C语言程序设计教程(第三版)课后习题6.10 (C语言代码)浏览:900 |
剪刀石头布 (C语言代码)浏览:1792 |
WU-拆分位数 (C++代码)浏览:819 |