Submission #1193464

#TimeUsernameProblemLanguageResultExecution timeMemory
1193464SSKMFAliens (IOI16_aliens)C++20
12 / 100
126 ms2376 KiB
#include "aliens.h" #include <bits/stdc++.h> using namespace std; long long minim[501][501]; long long take_photos(int dorit , int lungime , int limita , vector <int> linie , vector<int> coloana) { vector < pair <int , int> > sir(dorit + 1); for (int indice = 0 ; indice < dorit ; indice++) { if (coloana[indice] < linie[indice]) { swap(linie[indice] , coloana[indice]); } sir[indice + 1] = {linie[indice] , coloana[indice]}; } sort(sir.begin() , sir.end()); sir[0] = {-1 , -1}; for (int secvente = 1 ; secvente <= limita ; secvente++) { minim[0][secvente] = 1000000000000000LL; } for (int dreapta = 1 ; dreapta <= dorit ; dreapta++) { minim[dreapta][0] = 1000000000000000LL; for (int secvente = 1 ; secvente <= limita ; secvente++) { minim[dreapta][secvente] = 1000000000000000LL; for (int stanga = dreapta ; stanga ; stanga--) { minim[dreapta][secvente] = min(minim[dreapta][secvente] , minim[stanga - 1][secvente - 1] + (sir[dreapta].second - sir[stanga].first + 1) * (sir[dreapta].second - sir[stanga].first + 1) - max(0 , sir[stanga - 1].second - sir[stanga].first + 1) * max(0 , sir[stanga - 1].second - sir[stanga].first + 1)); } } } long long rezultat = 1000000000000000LL; for (int secvente = 1 ; secvente <= limita ; secvente++) { rezultat = min(rezultat , minim[dorit][secvente]); } return rezultat; }

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...