您的位置:

蚂蚁感冒c语言,蚂蚁感冒 c语言 最简单

本文目录一览:

C语言题,急!!!可以用一点C++

代码我就不帮你写了,给你讲下思路:

蚂蚁a-- --蚂蚁b 他们相向而行,遇到之后变成

--蚂蚁a 蚂蚁b-- 他们逆向而行

如果不考虑蚂蚁的区别,所有蚂蚁都是一种蚂蚁,那么就变成了

向右走蚂蚁-- --向左走蚂蚁 相遇后变成

--向左走蚂蚁 向右走蚂蚁-- 还是两只蚂蚁,一只左走,一只右走,没有改变!!

所以,题目条件简化为蚂蚁只向着一个方向运动,相互之间不影响,到头就掉下去。

那么分析下,假设杆子有AB两头,最坏情况就是

在最靠近A头的蚂蚁跑到B的时间

在最靠近B头的蚂蚁跑到A的时间

两者取最坏

最好情况就是

最中间的蚂蚁往最靠近的那头跑所需要的时间

思路明朗了,去编程吧

蚂蚁会感冒么?

感冒是上呼吸道感染。

蚂蚁没有鼻、气管、肺等呼吸系统,所以不会“感冒”。

但是,蚂蚁也有呼吸系统,是否会生病就不知道了,但是,肯定不叫“感冒”。

一道C语言编程题

#includestdio.h

#includestdlib.h

#includememory.h

int s1[9][9],a,b,w,h,x,y,n;

void gc(int a,int b,int hp,int m)

{

 if(hp!=0) 

 {

  if(s1[a][b]==3) {if((mn)||(n==0)) n=m;}else

  {

   if(s1[a][b]==4) hp=6;

   if(s1[a-1][b]!=0) gc(a-1,b,hp-1,m+1);

   if(s1[a+1][b]!=0) gc(a+1,b,hp-1,m+1);

   if(s1[a][b-1]!=0) gc(a,b-1,hp-1,m+1);

   if(s1[a][b+1]!=0) gc(a,b+1,hp-1,m+1);

  }

 }

}

int main()

{

 scanf("%d %d",w,h);

 for(a=1;a=h;a++)

  for(b=1;b=w;b++) {scanf("%d",s1[a][b]);if(s1[a][b]==2) x=a;y=b;}

 for(a=0;a=w;a++) {s1[0][a]=0;s1[h+1][a]=0;}

 for(a=0;a=h;a++) {s1[a][0]=0;s1[a][w+1]=0;}

 gc(x,y,6,0);

 printf("%d",n);

 return 0;

}