Submission #722805

#TimeUsernameProblemLanguageResultExecution timeMemory
722805vjudge1Collecting Stamps 3 (JOI20_ho_t3)C++17
0 / 100
2067 ms296 KiB
#include <bits/stdc++.h> using namespace std; typedef long long ll; int v[205], te[205], p[205]; int n, len; int dist(int a, int b){ return min(abs(v[a] - v[b]), min(v[a], v[b]) + len - max(v[a], v[b])); if(v[a] == 0 || v[b] == 0) return max(v[a], v[b]); } int solve(int i, int t){ ll ans; if(t <= te[i]) ans = 1; else ans = 0; int ma = 0; for(int j = 1; j<=n; j++){ if(j == i || p[j] == 1) continue; p[j] = 1; ma = max(ma, solve(j, dist(j, i) + t)); p[j] = 0; } return ans + ma; } int main(){ cin >> n >> len; for(int i = 1; i<=n; i++) cin >> v[i]; for(int i = 1; i<=n; i++) cin >> te[i]; v[0] = 0; te[0] = -1; cout << solve(0, 0) << endl;; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...