#include #define ll long long using namespace std; int N,M,G,roditelj[205][205],ture,dete[2005],resenje[2005];; ll udaljenost[205][205]; struct trenutak{ ll cena, i; }trenutci[205][2005]; bool comp(trenutak a,trenutak b) { return a.cena>N>>M>>G; for(int i=1;i<=G;i++){ cin>>dete[i]; } for(int i=1;i<=N;i++){ for(int j=1;j<=2000;j++){ cin>>trenutci[i][j].cena; trenutci[i][j].i=j; } } for(int i=1;i<=N;i++){ for(int j=1;j<=N;j++){ udaljenost[i][j]=1e9; } } for(int i=1;i<=M;i++){ int u,v,w; cin>>u>>v>>w; udaljenost[u][v]=w; udaljenost[v][u]=w; } Predkalkulacija(); for(int i=1;i<=N;i++){ sort(trenutci[i]+1,trenutci[i]+2001,comp); } for(int i=1;i<=G;i++){ for(int j=1;j<=2000;j++){ if(resenje[trenutci[dete[i]][j].i]==0){ resenje[trenutci[dete[i]][j].i]=i; break; } } } for(int i=1;i<=2000;i++){ if(resenje[i]!=0){ ture++; } } freopen("transport.out","w",stdout); cout<put; int u,v; u=1; v=dete[resenje[i]]; put.push_back(u); while(u!=v){ u=roditelj[u][v]; put.push_back(u); } cout<