Pagini recente » Cod sursa (job #3291380) | Cod sursa (job #2573928) | Cod sursa (job #1285045) | Cod sursa (job #1585083) | Cod sursa (job #1359810)
#include <iostream>
#include <fstream>
#include <list>
#include <vector>
using namespace std;
ifstream f("easygraph.in");
ofstream g("easygraph.out");
char vis[15001];
long long sm;
long long s1,s2;
vector <int>mat[15001];
int sum[15001];
int v[15001];
int n;
list<int> L;
int c=0;
void dfs(int nod)
{
//cout<<nod<<" ";
for(int i=0;i<mat[nod].size();i++){
if(vis[mat[nod][i]]==0)
{
vis[mat[nod][i]]=1;
dfs(mat[nod][i]);
}
}
//c++;
//s2=s1;
L.push_front(nod);
s1=v[nod];
if (s1 < s2 + v[nod])
s1 = s2 + v[nod];
if (sm < s1)
sm = s1;
}
int main()
{
int t,m,l;
// f>>t;
for(int i=1;i<=1;i++)
{
f>>n;
f>>m;
// for(int i = 1; i <= n; i++){
// f>>v[i];
}
int a1=0;
for(int j=1;j<=m;j++)
{
int k,p;
f>>k;
f>>p;
mat[k].push_back(p);
}
for(int i = 1; i <= n; i++)
{
if(vis[i]==0){
if(!a1)
{
sm=v[i];
a1=1;
}
vis[i]=1;
s1=0;
s2=0;
dfs(i);
}
}
for(int i = 1; i <= n; i++){
vis[i]=0;
mat[i].clear();
}
// g<<sm<<" \n";
list<int>::iterator h;
for(h=L.begin(); h != L.end(); ++h)
g << *h << " ";
cout << "Hello world!" << endl;
return 0;
}