⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 shorttime.cpp

📁 次界面好用但是也可能有许多不足还希望有贤人志士指点迷津!
💻 CPP
字号:
#include"traffic.h"

step Shorttime(ALGraph G,int kind,StrARR path,int n)
 {
 time_t    now;
 struct     tm    *pTime;
 ArcNode *p;
 int i,j,m,minday,minhour,minminute,hour,minute,day,min;
 Dtime arrive;
 openfile("head");
 time(&now);
 pTime = localtime(&now);

 minhour = MAX;
 minminute = MAX;
 minday = MAX;
 min = -1;
 
 for(i = 0;i < n;i ++)
  {
   day = 0;
   hour = 0;
   minute = 0;
   arrive.hour = pTime->tm_hour;
   arrive.minute = pTime->tm_min;
     for( j = 0; path[i][j+1] != -1; j++)
      {
	for(p = G.vertices[path[i][j]].firstarc;p && p->adjvex!=path[i][j+1]; p = p-> nextarc);
	 if(!p->Tool[kind])
	   {
	   day = MAX;
	   hour = MAX;
	   minute = MAX;
	   break;
	   }
          else 
            {
	      for(m = 0;GLtime(arrive,p->Tool[kind]->starttime[m]) && m < p -> Tool[kind]->line;m ++);
	       if(m == p -> Tool[kind]->line)
                {
			  minute = minute + (60 - arrive.minute)%60;
			  hour = hour + (23 + (60 - arrive.minute)/60 )- arrive.hour;
			  arrive.hour = 0;
			  arrive.minute = 0;
			  m = 0;
			}
	     Counttime(arrive,p -> Tool[kind]->starttime[m],
	     p->Tool[kind]->drivetime,day ,hour,minute);
            }
      }
     if(day < minday || day == minday && hour < minhour || day == minday && minhour == hour &&minminute < minute)
        {
	  minday = day;
	  minhour = hour;
	  minminute = minute;
	  min = i;
        } 
    }
    
  if(min == -1)
     printf("There is no path!!");
  else
   {
	  printf(" short time path(%d  %d:%d):\n\n",minday,minhour,minminute);
          printpath(G,kind,path,min);
  };
  return NEXTSTEP;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -