Submission #291218

#TimeUsernameProblemLanguageResultExecution timeMemory
291218peti1234Aliens (IOI16_aliens)C++17
0 / 100
1 ms384 KiB
#include <bits/stdc++.h> using namespace std; const int c=502; long long dp[c][c]; vector<pair<int, int> > sz; long long take_photos(int n, int m, int t, vector<int> x, vector<int> y) { for (int i=0; i<n; i++) { int a=min(x[i], y[i]), b=max(x[i], y[i]); sz.push_back({a, b}); } sort(sz.begin(), sz.end()); for (int i=1; i<=n; i++) for (int j=0; j<=t; j++) dp[i][j]=1e9; for (int i=0; i<n; i++) for (int j=0; j<t; j++) { int maxi=0, e=sz[i].first, h=0; for (int k=0; k<i; k++) maxi=max(maxi, sz[k].second); maxi=max(0, maxi-e); for (int k=i; k<n; k++) { h=max(h, sz[k].second); if (h>maxi+e) dp[k+1][j+1]=min(dp[k+1][j+1], dp[i+1][j]+(h-e)*(h-e)-maxi*maxi); } } return dp[n][t]; }
#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...