#include #include #include #include #include using namespace std; const int maxn = 10010; int tot,n,m,ans; const int inf = 999999999; struct Edge { int t,w; int next; int vis; }edge[1000005]; int head[maxn],E; void add(int s,int t,int w) { edge[E].t=t; edge[E].w=w; edge[E].vis=0; edge[E].next=head[s]; head[s]=E++; } int Btype,Time,N,M; int dfn[maxn],low[maxn],belong[maxn]; int st[maxn],Top; int tt[100010][3],cnt; inline int min(int a,int b){return avice_Min) swap(vice_Min,Min); if(Minvice_Min) ans=vice_Min; return rr; } int a1,a2,flag; int main() { int i,a,b,w; while(scanf("%d%d",&n,&m)!=EOF) { memset(head,-1,sizeof(head));E=0; for(i=0;i