1439: 程序填空

Memory Limit:128 MB Time Limit:1.000 S
Judge Style:Text Compare Creator:
Submit:51 Solved:31

Description

#include <iostream>
#include <cstring>
using namespace std;

const int N = 2510;

bool st[N];
int n, m, s, e;
int g[N][N], dist[N];

void dijkstra()
{
memset(dist, 0x3f, sizeof dist);
dist = 0;
for (int i = 0; i < n; i ++)
{
int t = -1;
for (int j = 1; j <= n; j ++)
if(!st[j] && (t == -1 || ___1___))
___2___;
___3___;
for (int j = 1; j <= n; j ++)
dist[j] = ___4___;
}
}

int main()
{
cin >> n >> m >> s >> e;
memset(g, 0x3f, sizeof g);
while(m --)
{
int a, b, c;
cin >> a >> b >> c;
g[a] = g[a] = ___5___;
}
dijkstra();
cout << dist[e] << endl;
return 0;
}

/*
1 A: dist[j] < dist[t]
  B: dist[t] < dist[j]
  C: dist[j] < dist[t] + g[t][j]
  D: dist[j] > dist[t] + g[t][j]
  
2 A: t+=j
  B: t-=j
  C: t=j
  D: t=0;

3 A: st[t]=0
  B: st[t]=1
  C: t=0
  D: t=-1

4 A: min(dist[t], dist[j] + g[t][j])
  B: max(dist[t], dist[j] + g[t][j])
  C: dist[j]>dist[t]+g[t][j]?dist[j]:dist[t]+g[t][j]
  D: dist[j]<dist[t]+g[t][j]?dist[j]:dist[t]+g[t][j]
  
5 A: a
  B: b
  C: min(g[a], c)
  D: g[a]>c?g[a]:c
*/