Submission #1210688

#TimeUsernameProblemLanguageResultExecution timeMemory
1210688AvianshNile (IOI24_nile)C++20
17 / 100
2094 ms4680 KiB
#include "nile.h" #include <bits/stdc++.h> using namespace std; vector<long long> calculate_costs(vector<int> W, vector<int> A, vector<int> B, vector<int> E) { int n = A.size(); vector<array<int,3>>boxes(n); for(int i = 0;i<n;i++){ boxes[i]={W[i],A[i],B[i]}; } sort(boxes.begin(),boxes.end()); int q = (int)E.size(); vector<long long>ans(q); for(int z = 0;z<q;z++){ int d = E[z]; long long dp[n]; dp[0]=boxes[0][1]; for(int i = 1;i<n;i++){ dp[i]=dp[i-1]+boxes[i][1]; long long asum = 0; for(int j = i-1;j>=0;j--){ if(boxes[i][0]-boxes[j][0]<=d&&j) dp[i]=min(dp[i],dp[j-1]+asum+boxes[j][2]+boxes[i][2]); else if(boxes[i][0]-boxes[j][0]<=d) dp[i]=min(dp[i],asum+boxes[j][2]+boxes[i][2]); else break; asum+=boxes[j][1]; } } ans[z]=dp[n-1]; } return ans; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...