亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

旅行商(TSP)->(拓撲排序)

2019-11-10 19:15:36
字體:
來源:轉載
供稿:網友

旅行商(TSP)


Description

Shrek is a postman working in the mountain, whose routine work is sending mail to n villages. Unfortunately, road between villages is out of repair for long time, such that some road is one-way road. There are even some villages that can’t be reached from any other village. In such a case, we only hope as many villages can receive mails as possible.

Shrek hopes to choose a village A as starting point (He will be air-dropped to this location), then pass by as many villages as possible. Finally, Shrek will arrived at village B. In the travelling PRocess, each villages is only passed by once. You should help Shrek to design the travel route.

Input

There are 2 integers, n and m, in first line. Stand for number of village and number of road respectively.

In the following m line, m road is given by identity of villages on two terminals. From v1 to v2. The identity of village is in range [1, n].

Output

Output maximum number of villages Shrek can pass by.

Example

Input

4 31 42 44 3

Output

3

Restrictions

1 <= n <= 1,000,000

0 <= m <= 1,000,000

These is no loop road in the input.

Time: 2 sec

Memory: 256 MB

Hints

Topological sorting

描述

Shrek是一個大山里的郵遞員,每天負責給所在地區的n個村莊派發信件。但杯具的是,由于道路狹窄,年久失修,村莊間的道路都只能單向通過,甚至有些村莊無法從任意一個村莊到達。這樣我們只能希望盡可能多的村莊可以收到投遞的信件。

Shrek希望知道如何選定一個村莊A作為起點(我們將他空投到該村莊),依次經過盡可能多的村莊,路途中的每個村莊都經過僅一次,最終到達終點村莊B,完成整個送信過程。這個任務交給你來完成。

輸入

第一行包括兩個整數n,m,分別表示村莊的個數以及可以通行的道路的數目。

以下共m行,每行用兩個整數v1和v2表示一條道路,兩個整數分別為道路連接的村莊號,道路的方向為從v1至v2,n個村莊編號為[1, n]。

輸出

輸出一個數字,表示符合條件的最長道路經過的村莊數。

樣例

見英文題面

限制

1 ≤ n ≤ 1,000,000

0 ≤ m ≤ 1,000,000

輸入保證道路之間沒有形成環

時間:2 sec

空間:256 MB

提示

拓撲排序

本來做這題是毫無思路的,后來看到了題下的提示說要用拓撲排序

然后思路就清晰了許多,寫完debug了半天才想起來這OJ無法使用

C++容器,于是乖乖查了題解。

具體算法仍是拓撲排序的傳統做法:

找到入度為0的點作為起點,依次處理后繼,

唯一的不同是需要保存到達該城市的當前最大值。

然后更新答案即可

#include<stdio.h>using namespace std;#define maxn 1000005int MAX(int a,int b){	if(a<b)		return b;	return a;}int n,m,cnt,q[maxn],degree[maxn];//q為拓撲數組---cnt為其長度//degree為各點入度//n,m分別為點數和邊數int ans=1;//保存答案struct node{	int num;//村莊編號	node *next;	node()	{		next=NULL;	}	node(int x,node *n) :num(x),next(n){}};//該OJ無法使用C++容器,因此//只能現學自認為重定義(看了題解)struct city{	node *nc;//next-city	int dp;//至此所通過的最大城市數	city(){nc=NULL;dp=1;}	void insert(int nc);}a[maxn];void city::insert(int nc){	degree[nc]++;	if(this->nc==NULL)		this->nc=new node(nc,NULL);	else	{		node *nodes=new node(nc,this->nc);		this->nc=nodes;	}	return;}void Topology(){	for(int i=1;i<=n;i++)		if(!degree[i])			q[++cnt]=i;	for(int i=1;q[i];i++)	{		int res=q[i];		for(node *tmp=a[res].nc;tmp!=NULL;tmp=tmp->next)		{			a[tmp->num].dp=MAX(a[res].dp+1,a[tmp->num].dp);			ans=MAX(ans,a[tmp->num].dp);			//處理后繼			int x=tmp->num;			degree[x]--;			if(!degree[x])				q[++cnt]=x;		}	}}int  main(){	scanf("%d%d",&n,&m);	for(int i=0;i<m;i++)	{		int x,y;		scanf("%d%d",&x,&y);		a[x].insert(y);	}	Topology();	printf("%d/n",ans);}


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
日日狠狠久久偷偷四色综合免费| 国产成人小视频在线观看| 亚洲色图偷窥自拍| 国产97在线|亚洲| 欧美午夜宅男影院在线观看| 精品国产户外野外| 91国产一区在线| 精品成人久久av| 亚洲精品视频网上网址在线观看| 亚洲在线观看视频| 中文字幕日韩精品在线观看| 国产日产欧美a一级在线| 欧美成人黑人xx视频免费观看| 日韩av在线影视| 欧美一区二区三区免费观看| 国产精品啪视频| 欧美激情二区三区| 日韩欧美国产黄色| 日韩在线欧美在线国产在线| 日韩大片免费观看视频播放| 亚洲国产欧美久久| 日本不卡高字幕在线2019| 日韩中文字幕免费视频| 亚洲最新在线视频| 欧美激情女人20p| 日韩亚洲在线观看| 狠狠躁夜夜躁久久躁别揉| 久久久999精品| 欧美成人午夜剧场免费观看| 亚洲精品久久久一区二区三区| 欧美与黑人午夜性猛交久久久| 精品久久久久久中文字幕大豆网| 国产精品一区二区三区久久久| 国产成人avxxxxx在线看| 亚洲人成在线观看网站高清| 欧美日韩黄色大片| 国产精品一区二区av影院萌芽| 欧美激情精品久久久久久黑人| 热re99久久精品国产66热| 91精品国产91久久久久久吃药| 欧美国产日韩二区| 亚洲国产成人精品电影| 91精品啪aⅴ在线观看国产| 日韩禁在线播放| 精品国产精品三级精品av网址| 亚洲第一页自拍| 国产精品嫩草影院一区二区| 国产一区二区日韩| 亚洲成人av在线播放| 国产亚洲欧洲高清一区| 精品久久久久久久久久久久久| 欧美疯狂做受xxxx高潮| 日韩精品视频在线观看免费| 亚洲理论在线a中文字幕| 欧美巨猛xxxx猛交黑人97人| 久热爱精品视频线路一| 日韩精品亚洲视频| 国产精品影院在线观看| 国产精品第一区| 亚洲91精品在线观看| 国内精品一区二区三区四区| 日韩av最新在线| 久久久久久九九九| 日韩在线视频观看正片免费网站| 欧美日韩xxxxx| 国产区精品在线观看| 欧美日韩国产一区二区| 97婷婷大伊香蕉精品视频| 尤物精品国产第一福利三区| 国产自产女人91一区在线观看| 91亚洲国产成人久久精品网站| 精品国产精品自拍| 欧美成人黑人xx视频免费观看| 国产精品视频久久久| 久久久久久久久国产精品| 亚洲一区二区中文字幕| 国产一区二区日韩精品欧美精品| 成人羞羞国产免费| 成人久久久久久| 亚洲福利视频网站| 国产丝袜一区视频在线观看| 91亚洲精品在线| 91香蕉亚洲精品| 国产不卡精品视男人的天堂| 91丨九色丨国产在线| 中文字幕在线国产精品| 日韩欧美福利视频| 精品女厕一区二区三区| 亚洲精品一区中文字幕乱码| 亚洲欧美国内爽妇网| 精品少妇一区二区30p| 国外成人免费在线播放| 国产日本欧美一区二区三区在线| 91精品国产自产在线老师啪| 日韩欧亚中文在线| 亚洲欧美日韩中文视频| 欧美成人剧情片在线观看| 日韩经典一区二区三区| 国产精品揄拍一区二区| 国产成人久久精品| 中文字幕亚洲第一| 91精品在线观看视频| 久久久久免费精品国产| 96sao精品视频在线观看| 日韩毛片在线观看| 日日骚av一区| 91中文字幕在线观看| 在线精品国产成人综合| 欧美激情视频在线观看| 亚洲图片欧美日产| 欧美性生交大片免网| 亚洲va欧美va国产综合剧情| 亚洲成色999久久网站| 亚洲v日韩v综合v精品v| 欧美激情精品久久久久久蜜臀| 日韩精品丝袜在线| 国产精品久久久久久超碰| 尤物精品国产第一福利三区| 国产视频自拍一区| 成人精品一区二区三区电影免费| xxx成人少妇69| 国产欧美一区二区三区久久人妖| 国产午夜一区二区| 中文字幕九色91在线| 亚洲国产欧美自拍| 日韩精品中文字幕在线播放| 大荫蒂欧美视频另类xxxx| 日韩av在线影院| 久久艳片www.17c.com| 成人免费淫片视频软件| 中文字幕亚洲无线码在线一区| 欧美午夜激情视频| 久久这里有精品视频| 热草久综合在线| 91av在线不卡| 日韩亚洲在线观看| 欧美激情亚洲视频| 久久影视电视剧免费网站| 欧美色视频日本高清在线观看| 久久精品视频va| 九九热这里只有在线精品视| 在线午夜精品自拍| 欧美性黄网官网| 黄色成人在线播放| 国产不卡精品视男人的天堂| 亚洲欧美中文日韩v在线观看| 久久久久久尹人网香蕉| 成人av在线网址| 久久精品国产2020观看福利| 国产亚洲欧美日韩美女| 91av在线视频观看| 日本精品久久中文字幕佐佐木| 欧洲一区二区视频| 国产精品自拍小视频| 成人激情视频在线观看| 国产精品高精视频免费| 亚洲新声在线观看| 奇门遁甲1982国语版免费观看高清| 久久人人爽人人爽人人片亚洲| 麻豆乱码国产一区二区三区| 久久久精品视频在线观看| 亚洲在线观看视频网站| 97婷婷涩涩精品一区| 日韩av电影国产|