제출 #289319

#제출 시각아이디문제언어결과실행 시간메모리
289319amoo_safarRoller Coaster Railroad (IOI16_railroad)C++17
34 / 100
77 ms8704 KiB
#include "railroad.h" #include <bits/stdc++.h> using namespace std; typedef long long ll; const int N = 16; ll dp[1 << N][N]; ll plan_roller_coaster(vector<int> s, vector<int> t){ int n = (int) s.size(); assert(n <= N); memset(dp, 31, sizeof dp); int n2 = 1 << n; for(int i = 0; i < n; i++) dp[1 << i][i] = 0; for(int i = 1; i < n2; i++){ for(int la = 0; la < n; la ++){ if(i >> la & 1 == 0) continue; for(int nx = 0; nx < n; nx ++){ if(i >> nx & 1) continue; dp[i | (1 << nx)][nx] = min(dp[i | (1 << nx)][nx], dp[i][la] + max(0, t[la] - s[nx])); } } } return *min_element(dp[n2 - 1], dp[n2 - 1] + n); }

컴파일 시 표준 에러 (stderr) 메시지

railroad.cpp: In function 'll plan_roller_coaster(std::vector<int>, std::vector<int>)':
railroad.cpp:21:19: warning: suggest parentheses around comparison in operand of '&' [-Wparentheses]
   21 |    if(i >> la & 1 == 0) continue;
      |                 ~~^~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...