Submission #1244322

#TimeUsernameProblemLanguageResultExecution timeMemory
1244322SpyrosAlivRoller Coaster Railroad (IOI16_railroad)C++20
34 / 100
33 ms11192 KiB
#include "railroad.h" #include <bits/stdc++.h> using namespace std; #define ll long long const ll INF = 1e17; long long plan_roller_coaster(std::vector<int> s, std::vector<int> t) { int n = s.size(); vector<vector<ll>> dp(1 << n, vector<ll>(n, INF)); for (int i = 0; i < n; i++) { dp[1 << i][i] = 0; } for (int mask = 1; mask < (1 << n); mask++) { for (int lst = 0; lst < n; lst++) { if (!((mask >> lst) & 1)) continue; for (int nxt = 0; nxt < n; nxt++) { if ((mask >> nxt) & 1) continue; int nxtMask = mask | (1 << nxt); dp[nxtMask][nxt] = min(dp[nxtMask][nxt], dp[mask][lst] + max(0LL, (ll)(t[lst] - s[nxt]))); } } } ll ans = INF; for (int i = 0; i < n; i++) ans = min(ans, dp[(1 << n) - 1][i]); return ans; } /* int main() { int n; cin >> n; vector<int> s(n), t(n); for (auto &i: s) cin >> i; for (auto &i: t) cin >> i; cout << plan_roller_coaster(s, t) << "\n"; }*/

Compilation message (stderr)

railroad.h:1:9: warning: #pragma once in main file
    1 | #pragma once
      |         ^~~~
railroad_c.h:1:9: warning: #pragma once in main file
    1 | #pragma once
      |         ^~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...