Submission #1151179

#TimeUsernameProblemLanguageResultExecution timeMemory
1151179alexddAliens (IOI16_aliens)C++20
0 / 100
0 ms328 KiB
#include "aliens.h" #include<bits/stdc++.h> using namespace std; #define int long long const int INF = 1e18; const int MAXN = 4005; const int MAXK = 4005; int dp[MAXN][MAXK]; pair<int,int> v[MAXN]; int maxy[MAXN]; long long take_photos(int32_t n, int32_t m, int32_t k, std::vector<int32_t> x, std::vector<int32_t> y) { for(int i=0;i<n;i++) { if(x[i] > y[i]) swap(x[i],y[i]); x[i]++; y[i]++; v[i+1] = {x[i],y[i]}; } sort(v+1,v+1+n); for(int i=1;i<=n;i++) { x[i] = v[i].first; y[i] = v[i].second; for(int j=0;j<=k;j++) dp[i][j]=INF; } for(int i=1;i<=n;i++) { for(int cnt=1;cnt<=k;cnt++) { int aux=0; for(int x=0;x<i;x++) { aux = max(aux, v[x].second); if(aux <= v[x].first) dp[i][cnt] = min(dp[i][cnt], dp[x][cnt-1] + (v[i].first-v[x].first)*(v[i].first-v[x].first)); } } } int mnm=INF; for(int i=0;i<=k;i++) mnm = min(mnm, dp[n][i]); return mnm; } /* 5 7 2 0 3 4 4 4 6 4 5 4 6 output: 25 */

Compilation message (stderr)

aliens.h:1:9: warning: #pragma once in main file
    1 | #pragma once
      |         ^~~~
aliens_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...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...