先上图。。。。用时0
解题思路:
找规律:最原始状态时:在其后边切同向的会被在其前边反向的所感染,其会感染在其前方与其反向的蚂蚁。
两只蚂蚁相遇除了感染,相当于啥都没发生,跟继续向前走的效果是一样的,不要把这道题想复杂了
注意事项:
第一数大于零和小于零的情况
自己本身也是感冒的蚂蚁
参考代码:
#include<cstdio> #include<cstdlib> using namespace std; int an[101]; int main () { int n,numa=0,numb=0;//numa代表它后边与其同向的蚂蚁,numb代表它前边与其反向的蚂蚁 scanf("%d",&n); for(int i=0;i<n;i++) scanf("%d",&an[i]); if(an[0]>0)//an[0]大于零和小于零时判断方法不一样 {for(int i=1;i<n;i++) { if(abs(an[i])<abs(an[0])&&an[i]*an[0]>0) numa++; else if(abs(an[i])>abs(an[0])&&an[i]*an[0]<0) numb++; }} else { for(int i=1;i<n;i++) { if(abs(an[i])>abs(an[0])&&an[i]*an[0]>0) numa++; else if(abs(an[i])<abs(an[0])&&an[i]*an[0]<0) numb++; } } if(numb==0)//如果第一只蚂蚁前与其同向的蚂蚁没有,那么没有蚂蚁能感染第一只蚂蚁后与其同向的蚂蚁 numa=1; else numa=numa+numb+1; printf("%d",numa); }
0.0分
0 人评分
简单的a+b (C语言代码)浏览:653 |
C语言程序设计教程(第三版)课后习题8.5 (C语言代码)浏览:588 |
C语言训练-素数问题 (C语言代码)浏览:1662 |
C语言程序设计教程(第三版)课后习题9.4 (Java代码)浏览:1421 |
C语言程序设计教程(第三版)课后习题11.3 (C语言代码)浏览:1043 |
字符串问题 (C语言代码)浏览:1524 |
C语言程序设计教程(第三版)课后习题5.6 (C语言代码)浏览:512 |
C语言程序设计教程(第三版)课后习题1.6 (C++代码)浏览:904 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:465 |
C语言程序设计教程(第三版)课后习题8.4 (C语言代码)浏览:619 |