Submission #994243

#TimeUsernameProblemLanguageResultExecution timeMemory
994243vjudge1Sightseeing in Kyoto (JOI22_kyoto)C++17
0 / 100
162 ms149328 KiB
#include <bits/stdc++.h> using namespace std; using ll = long long; const int MAXN = 100'001; ll dp[3000][3000], a[MAXN], b[MAXN], idxa[MAXN], idxb[MAXN], timera = 1, timerb = 1; set<ll> hva, hvb; int main() { ios::sync_with_stdio(0); cin.tie(0); int n, m; cin >> n >> m; for (int i = 1; i <= n; i++) cin >> a[i]; for (int i = 1; i <= m; i++) cin >> b[i]; for (int i = 0; i < MAXN; i++) { for (int j = 0; j < MAXN; j++) { dp[i][j] = 1e18; } } for (int i = 1; i <= n; i++) { if (!hva.count(a[i]) || i == n) { hva.insert(a[i]); idxa[timera++] = i; } } for (int i = 1; i <= m; i++) { if (!hvb.count(b[i]) || i == m) { hvb.insert(b[i]); idxb[timerb++] = i; } } dp[1][1] = 0; for (int i = 1; i < timera; i++) { for (int j = 1; j < timerb; j++) { dp[i][j+1] = min(dp[i][j+1], dp[i][j] + a[i] * (idxb[j+1] - idxb[j])); dp[i+1][j] = min(dp[i+1][j], dp[i][j] + b[j] * (idxa[i+1] - idxa[i])); } } cout << dp[timera-1][timerb-1] << "\n"; return 0; }

Compilation message (stderr)

kyoto.cpp: In function 'int main()':
kyoto.cpp:18:22: warning: iteration 3000 invokes undefined behavior [-Waggressive-loop-optimizations]
   18 |             dp[i][j] = 1e18;
      |             ~~~~~~~~~^~~~~~
kyoto.cpp:17:27: note: within this loop
   17 |         for (int j = 0; j < MAXN; j++) {
      |                         ~~^~~~~~
kyoto.cpp:18:22: warning: iteration 3000 invokes undefined behavior [-Waggressive-loop-optimizations]
   18 |             dp[i][j] = 1e18;
      |             ~~~~~~~~~^~~~~~
kyoto.cpp:16:23: note: within this loop
   16 |     for (int i = 0; i < MAXN; i++) {
      |                     ~~^~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...