# | Submission time | Handle | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
370056 | 2021-02-23T05:40:54 Z | 79brue | Travelling Merchant (APIO17_merchant) | C++14 | 120 ms | 4204 KB |
#include <bits/stdc++.h> using namespace std; typedef long long ll; int n, m, k; vector<pair<int, ll> > link[102]; ll buy[102][1002], sell[102][1002]; ll dist[102][102]; ll profit[102][102]; ll tDist[102][102]; bool able(ll key){ for(int i=1; i<=n; i++){ for(int j=1; j<=n; j++){ tDist[i][j] = profit[i][j] - key * dist[i][j]; } } for(int d=1; d<=n; d++){ for(int i=1; i<=n; i++){ for(int j=1; j<=n; j++){ tDist[i][j] = max(tDist[i][j], tDist[i][d] + tDist[d][j]); } } } for(int i=1; i<=n; i++){ if(tDist[i][i] >= 0) return true; } return false; } int main(){ scanf("%d %d %d", &n, &m, &k); for(int i=1; i<=n; i++){ for(int j=1; j<=k; j++){ scanf("%lld %lld", &buy[i][j], &sell[i][j]); } } for(int i=1; i<=n; i++) for(int j=1; j<=n; j++) dist[i][j] = 1e9; for(int i=1; i<=m; i++){ int x, y; ll z; scanf("%d %d %lld", &x, &y, &z); dist[x][y] = z; } for(int d=1; d<=n; d++){ for(int i=1; i<=n; i++){ for(int j=1; j<=n; j++){ dist[i][j] = min(dist[i][j], dist[i][d] + dist[d][j]); } } } for(int i=1; i<=n; i++){ for(int j=1; j<=n; j++){ for(int x=1; x<=k; x++){ if(min({sell[j][x], buy[i][x]}) == -1) continue; profit[i][j] = max(profit[i][j], sell[j][x] - buy[i][x]); } } } ll MIN = 0, MAX = 1e9, ANS = 0; while(MIN <= MAX){ ll MID = (MIN + MAX) / 2; if(able(MID)){ ANS = MID; MIN = MID+1; } else MAX = MID-1; } printf("%lld", ANS); }
Compilation message
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 79 ms | 3308 KB | Output is correct |
2 | Correct | 39 ms | 1260 KB | Output is correct |
3 | Correct | 39 ms | 1260 KB | Output is correct |
4 | Correct | 6 ms | 876 KB | Output is correct |
5 | Correct | 8 ms | 876 KB | Output is correct |
6 | Correct | 6 ms | 876 KB | Output is correct |
7 | Correct | 7 ms | 876 KB | Output is correct |
8 | Correct | 1 ms | 364 KB | Output is correct |
9 | Correct | 6 ms | 876 KB | Output is correct |
10 | Correct | 6 ms | 876 KB | Output is correct |
11 | Correct | 10 ms | 876 KB | Output is correct |
12 | Correct | 1 ms | 492 KB | Output is correct |
13 | Correct | 7 ms | 876 KB | Output is correct |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 6 ms | 876 KB | Output is correct |
2 | Correct | 7 ms | 876 KB | Output is correct |
3 | Correct | 1 ms | 364 KB | Output is correct |
4 | Correct | 6 ms | 876 KB | Output is correct |
5 | Correct | 6 ms | 876 KB | Output is correct |
6 | Correct | 10 ms | 876 KB | Output is correct |
7 | Correct | 1 ms | 492 KB | Output is correct |
8 | Correct | 7 ms | 876 KB | Output is correct |
9 | Correct | 6 ms | 876 KB | Output is correct |
10 | Correct | 7 ms | 876 KB | Output is correct |
11 | Correct | 7 ms | 876 KB | Output is correct |
12 | Correct | 6 ms | 876 KB | Output is correct |
13 | Correct | 7 ms | 1004 KB | Output is correct |
14 | Correct | 1 ms | 364 KB | Output is correct |
15 | Correct | 6 ms | 876 KB | Output is correct |
16 | Correct | 7 ms | 876 KB | Output is correct |
17 | Correct | 6 ms | 876 KB | Output is correct |
18 | Correct | 7 ms | 896 KB | Output is correct |
19 | Correct | 9 ms | 1004 KB | Output is correct |
20 | Correct | 7 ms | 1004 KB | Output is correct |
21 | Correct | 7 ms | 876 KB | Output is correct |
22 | Correct | 7 ms | 876 KB | Output is correct |
23 | Correct | 8 ms | 1004 KB | Output is correct |
24 | Correct | 6 ms | 876 KB | Output is correct |
25 | Correct | 11 ms | 876 KB | Output is correct |
26 | Correct | 1 ms | 364 KB | Output is correct |
27 | Correct | 8 ms | 1004 KB | Output is correct |
28 | Correct | 7 ms | 1004 KB | Output is correct |
29 | Correct | 8 ms | 1024 KB | Output is correct |
30 | Correct | 7 ms | 876 KB | Output is correct |
31 | Correct | 7 ms | 876 KB | Output is correct |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 11 ms | 876 KB | Output is correct |
2 | Correct | 1 ms | 364 KB | Output is correct |
3 | Correct | 8 ms | 1004 KB | Output is correct |
4 | Correct | 7 ms | 1004 KB | Output is correct |
5 | Correct | 8 ms | 1024 KB | Output is correct |
6 | Correct | 7 ms | 876 KB | Output is correct |
7 | Correct | 7 ms | 876 KB | Output is correct |
8 | Correct | 45 ms | 1644 KB | Output is correct |
9 | Correct | 96 ms | 3948 KB | Output is correct |
10 | Correct | 41 ms | 1516 KB | Output is correct |
11 | Correct | 47 ms | 1772 KB | Output is correct |
12 | Correct | 47 ms | 1772 KB | Output is correct |
13 | Correct | 46 ms | 1536 KB | Output is correct |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 6 ms | 876 KB | Output is correct |
2 | Correct | 7 ms | 876 KB | Output is correct |
3 | Correct | 7 ms | 876 KB | Output is correct |
4 | Correct | 6 ms | 876 KB | Output is correct |
5 | Correct | 7 ms | 1004 KB | Output is correct |
6 | Correct | 1 ms | 364 KB | Output is correct |
7 | Correct | 6 ms | 876 KB | Output is correct |
8 | Correct | 7 ms | 876 KB | Output is correct |
9 | Correct | 6 ms | 876 KB | Output is correct |
10 | Correct | 7 ms | 896 KB | Output is correct |
11 | Correct | 9 ms | 1004 KB | Output is correct |
12 | Correct | 7 ms | 1004 KB | Output is correct |
13 | Correct | 7 ms | 876 KB | Output is correct |
14 | Correct | 7 ms | 876 KB | Output is correct |
15 | Correct | 8 ms | 1004 KB | Output is correct |
16 | Correct | 6 ms | 876 KB | Output is correct |
17 | Correct | 45 ms | 1644 KB | Output is correct |
18 | Correct | 96 ms | 3948 KB | Output is correct |
19 | Correct | 41 ms | 1516 KB | Output is correct |
20 | Correct | 47 ms | 1772 KB | Output is correct |
21 | Correct | 47 ms | 1772 KB | Output is correct |
22 | Correct | 46 ms | 1536 KB | Output is correct |
23 | Correct | 11 ms | 876 KB | Output is correct |
24 | Correct | 1 ms | 364 KB | Output is correct |
25 | Correct | 8 ms | 1004 KB | Output is correct |
26 | Correct | 7 ms | 1004 KB | Output is correct |
27 | Correct | 8 ms | 1024 KB | Output is correct |
28 | Correct | 7 ms | 876 KB | Output is correct |
29 | Correct | 7 ms | 876 KB | Output is correct |
30 | Correct | 79 ms | 3308 KB | Output is correct |
31 | Correct | 39 ms | 1260 KB | Output is correct |
32 | Correct | 39 ms | 1260 KB | Output is correct |
33 | Correct | 6 ms | 876 KB | Output is correct |
34 | Correct | 8 ms | 876 KB | Output is correct |
35 | Correct | 6 ms | 876 KB | Output is correct |
36 | Correct | 7 ms | 876 KB | Output is correct |
37 | Correct | 1 ms | 364 KB | Output is correct |
38 | Correct | 6 ms | 876 KB | Output is correct |
39 | Correct | 6 ms | 876 KB | Output is correct |
40 | Correct | 10 ms | 876 KB | Output is correct |
41 | Correct | 1 ms | 492 KB | Output is correct |
42 | Correct | 7 ms | 876 KB | Output is correct |
43 | Correct | 40 ms | 1388 KB | Output is correct |
44 | Correct | 43 ms | 1644 KB | Output is correct |
45 | Correct | 65 ms | 2668 KB | Output is correct |
46 | Correct | 42 ms | 1644 KB | Output is correct |
47 | Correct | 43 ms | 1644 KB | Output is correct |
48 | Correct | 43 ms | 1644 KB | Output is correct |
49 | Correct | 120 ms | 4096 KB | Output is correct |
50 | Correct | 1 ms | 364 KB | Output is correct |
51 | Correct | 1 ms | 364 KB | Output is correct |
52 | Correct | 39 ms | 1388 KB | Output is correct |
53 | Correct | 44 ms | 1516 KB | Output is correct |
54 | Correct | 61 ms | 1516 KB | Output is correct |
55 | Correct | 40 ms | 1388 KB | Output is correct |
56 | Correct | 39 ms | 1388 KB | Output is correct |
57 | Correct | 1 ms | 364 KB | Output is correct |
58 | Correct | 13 ms | 1004 KB | Output is correct |
59 | Correct | 13 ms | 1004 KB | Output is correct |
60 | Correct | 8 ms | 1004 KB | Output is correct |
61 | Correct | 107 ms | 4204 KB | Output is correct |
62 | Correct | 106 ms | 4204 KB | Output is correct |
63 | Correct | 1 ms | 364 KB | Output is correct |