Submission #1224068

#TimeUsernameProblemLanguageResultExecution timeMemory
1224068GabrielNile (IOI24_nile)C++20
23 / 100
2095 ms11388 KiB
#include "nile.h" #include "bits/stdc++.h" using namespace std; struct Artefacto{ long long Peso, a, b; }; bool Quinto = 1; bool operator<(const Artefacto& a, const Artefacto& b){ if(Quinto) return a.Peso < b.Peso; } vector<Artefacto> Artefactos; vector< vector<long long> > PD; vector<long long> calculate_costs(vector<int> w, vector<int> a, vector<int> b, vector<int> e) { int n = a.size(), q = e.size(); for(long long i = 0; i < n; i++){ Artefacto Nuevo; Nuevo.Peso = w[i]; Nuevo.a = a[i]; Nuevo.b = b[i]; Artefactos.push_back(Nuevo); } sort(Artefactos.begin(), Artefactos.end()); long long r = 0; vector<long long> Retorno; for(auto E: e){ vector< vector<long long> > PD(n + 1, vector<long long>(3, 2222222222222222)); PD[n][0] = 0; for(long long i = n - 1; i > -1; i--){ for(long long j = 0; j < 3; j++){ if(j == 0) PD[i][j] = min(PD[i + 1][j] + Artefactos[i].a, PD[i + 1][1] + Artefactos[i].b); if(j == 1){ if(i - j > -1 and abs(Artefactos[i].Peso - Artefactos[i - j].Peso) <= E) PD[i][j] = min(PD[i + 1][j] + Artefactos[i].a, PD[i + 1][0] + Artefactos[i].b); else PD[i][j] = 2222222222222222; } if(j == 2){ if(i - j > -1 and abs(Artefactos[i].Peso - Artefactos[i - j].Peso) <= E) PD[i][j] = PD[i + 1][0] + Artefactos[i].b; else PD[i][j] = 2222222222222222; } } } Retorno.push_back(PD[0][0]); } return Retorno; }

Compilation message (stderr)

nile.cpp: In function 'bool operator<(const Artefacto&, const Artefacto&)':
nile.cpp:10:1: warning: control reaches end of non-void function [-Wreturn-type]
   10 | }
      | ^
#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...