关于O2

P1119 灾后重建

你试着询问完就输出,还有把数组开大试试?
by Y_QWQ_Y @ 2023-12-21 20:00:19


@[XMqing](/user/1019048) 不知道为什么,我的代码跟你的差不多,为啥我的关掉o2也可以?你看看 ```cpp #include <bits/stdc++.h> #define int long long using namespace std; int f[2005][2005], n, m, t[2005], k, q; void floyd (int k){for (int i = 0; i < n; ++ i)for (int j = 0; j < n; ++ j)f[i][j] = min (f[i][j], f[i][k] + f[k][j]);} signed main () { memset (f, 0x3f, sizeof (f)); cin >> n >> m; for (int i = 0; i < n; ++ i) { f[i][i] = 0; cin >> t[i]; } for (int i = 0; i < m; ++ i) { int x, y, tt; cin >> x >> y >> tt; f[x][y] = f[y][x] = tt; } cin >> q; ++ q; while (-- q) { int x, y, tt; cin >> x >> y >> tt; while (tt >= t[k])floyd (k ++); if (tt < t[x] || tt < t[y] || f[x][y] >= 1e9)puts ("-1"); else printf ("%d\n", f[x][y]); } return 0; } ```
by Y_QWQ_Y @ 2023-12-21 20:06:14


@[XMqing](/user/1019048) 没有return 0;
by Anythingispossible @ 2023-12-28 20:10:54


|