sdut 2498【aoe 网上的关键路径】
http://acm.sdut.edu.cn/sdutoj/problem.php?action=showproblem&problemid=2498
代码超时怎么破:
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#include<iostream>
#include<algorithm>
#include<queue>
#include<stack>
using namespace std;
int mapx[][],ve[],vl[],h[],m,k;
stack<int>zhan;
queue<int>e;
queue<int>l;
void tuopu();
void gengxin();
int main()
{
while(cin>>m>>k)
{
memset(mapx,,sizeof(mapx));
memset(h,,sizeof(h));
memset(ve,,sizeof(ve));
memset(vl,,sizeof(vl));
int i,u,v,countx;
for(i=; i<=k; i++)
{
cin>>u>>v>>countx;
mapx[u][v]=countx;
h[v]++;
}
tuopu();
gengxin();
}
}
void tuopu()
{
int i,flag=,j;
while(flag=!flag)
{
for(i=; i<=m; i++)
{
if(h[i]==)
{
flag=;
h[i]=-;
zhan.push(i);
for(j=; j<=m; j++)
if(mapx[i][j]!=)
h[j]--;
//更新 ve数组
int y=;
for(j=; j<=m; j++)
{
if(mapx[j][i]!=)
{
if(mapx[j][i]+ve[j]>y)
{
y=mapx[j][i]+ve[j];
}
}
}
ve[i]=y;
}
}
}
/*while(!zhan.empty())
{
cout<<zhan.top()<<" ";
zhan.pop();
}
cout<<endl;*/
//输出ve 数组
/*for(i=1;i<=m;i++)
cout<<ve[i]<<" ";
cout<<endl;*/
}
void gengxin()
{
//更新 vl数组和v数组,e数组
int i,j;
int x=ve[m];
for(i=; i<=m; i++)
vl[i]=x;
int maxx=x,z[],top=-,z1[];
while(!zhan.empty())
{
x=zhan.top();
int y=maxx;
for(i=; i<=m; i++)
{
if(mapx[x][i]!=)
{
if(y>vl[i]-mapx[x][i])
y=vl[i]-mapx[x][i];
}
}
vl[x]=y;
zhan.pop();
}
//验证输出vl数组
/*for(i=1;i<=m;i++)
cout<<vl[i]<<" ";
cout<<endl;*/
int countx=,q1=;
for(i=; i<=m; i++)
{
for(j=; j<=m; j++)
{
if(mapx[i][j]!=)
{
//e.push(ve[i]);
//l.push(vl[j]-mapx[i][j]);
if(ve[i]==vl[j]-mapx[i][j])
{
if(j==m)
q1=;
countx=countx+mapx[i][j];
z[++top]=i;
z1[top]=j;
break;
}
}
}
if(q1==)break;
}
cout<<countx<<endl;
for(i=; i<=top; i++)
cout<<z[i]<<" "<<z1[i]<<endl;
//验证输出
/*
while(!e.empty())
{
cout<<e.front()<<" ";
e.pop();
}
cout<<endl;
while(!l.empty())
{
cout<<l.front()<<" ";
l.pop();
}
cout<<endl;*/
}
/*测试数据
9 11
1 2 6
1 3 4
1 4 5
2 5 1
3 5 1
4 6 2
5 7 8
5 8 7
6 8 4
7 9 2
8 9 4
*/
sdut 2498【aoe 网上的关键路径】的更多相关文章
- SDUT 2498 AOE网上的关键路径
AOE网上的关键路径 Time Limit: 1000MS Memory Limit: 65536KB Submit Statistic Problem Description 一个无环的有向图称为无 ...
- sdut AOE网上的关键路径(spfa+前向星)
http://acm.sdut.edu.cn/sdutoj/showproblem.php?pid=2498&cid=1304 题目描述 一个无环的有向图称为无环图(Directed Acyc ...
- SDUTOJ 2498 数据结构实验之图论十一:AOE网上的关键路径
题目链接:http://acm.sdut.edu.cn/onlinejudge2/index.php/Home/Index/problemdetail/pid/2498.html 题目大意 略. 分析 ...
- AOE网上的关键路径(最长路径 + 打印路径)
题目描述 一个无环的有向图称为无环图(Directed Acyclic Graph),简称DAG图. AOE(Activity On Edge)网:顾名思义,用边表示活动的网,当然它也是DAG ...
- 数据结构实验之图论十一:AOE网上的关键路径【Bellman_Ford算法】
Problem Description 一个无环的有向图称为无环图(Directed Acyclic Graph),简称DAG图. AOE(Activity On Edge)网:顾名思义,用边 ...
- SDUT 2498-AOE网上的关键路径(spfa+字典序路径)
AOE网上的关键路径 Time Limit: 1000ms Memory limit: 65536K 有疑问?点这里^_^ 题目描写叙述 一个无环的有向图称为无环图(Directed Acycl ...
- SDUT-2498_AOE网上的关键路径
数据结构实验之图论十一:AOE网上的关键路径 Time Limit: 2000 ms Memory Limit: 65536 KiB Problem Description 一个无环的有向图称为无环图 ...
- AOE网与关键路径简介
前面我们说过的拓扑排序主要是为解决一个工程能否顺序进行的问题,但有时我们还需要解决工程完成需要的最短时间问题.如果我们要对一个流程图获得最短时间,就必须要分析它们的拓扑关系,并且找到当中最关键的流程, ...
- AOE网络的关键路径问题
关于AOE网络的基本概念可以参考<数据结构>或者search一下就能找到,这里不做赘述. 寻找AOE网络的关键路径目的是:发现该活动网络中能够缩短工程时长的活动,缩短这些活动的时长,就可以 ...
随机推荐
- 关于vco
关于vco:vco是vSphere 4开始,在vCenter中默认附件安装的一个新组件.它的作用主要是提供工作流管理.这么说可能有些抽象,让人搞不明白vco到底是做什么用的.其实很简单,以前的vCen ...
- 2016年10月12日--string、Math类、Random随机数、DateTime、异常保护
string string.length; //得到string长度 string.Trim(); //去掉string前后的空格 string.TrimStart(); //去掉string前的空格 ...
- POJ 3641 快速幂+素数
http://poj.org/problem?id=3641 练手用,结果念题不清,以为是奇偶数WA了一发 #include<iostream> #include<cstdio> ...
- HDU 2853 最大匹配&KM模板
http://acm.hdu.edu.cn/showproblem.php?pid=2853 这道题初看了没有思路,一直想的用网络流如何解决 参考了潘大神牌题解才懂的 最大匹配问题KM 还需要一些技巧 ...
- gjd
#include <cstdio> #include <cstring> #include <malloc.h> #define radix (1u<< ...
- speex介绍
1介绍 Speex是一套主要针对语音的开源免费,无专利保护的音频压缩格式.Speex工程着力于通过提供一个可以替代高性能语音编解码来降低语音应用输入门槛 .另外,相对于其它编解码器,Speex也很适合 ...
- 越狱后的ios如何用apt-get 安装各种命令
越狱后的ios如何用apt-get 安装各种命令 iphone越狱后想玩linux. 1. ssh 客户端:ssh Term Pro. 2. 只装客户端是连不上的,还得一个 ssh connect ...
- ubuntu下ssh使用proxy:corkscrew
1,安装corkscrew: sudo apt-get install corkscrew 2, 配置 vim ~/.ssh/config 写入如下: Host 10.1.*.* ProxyComma ...
- 左侧导航栏复制粘贴保存html即可
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- 配置ubuntu虚拟机备忘
#1配置minicom sudo minicom -s sudo minicom -w #1.配置网络,嵌入机的ip地址 ifconfig eth0 10.5.52.202 #2.挂载文件,把虚拟主机 ...