제출 #1224069

#제출 시각아이디문제언어결과실행 시간메모리
1224069GabrielNile (IOI24_nile)C++20
67 / 100
2093 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){ if(a.Peso < b.Peso) return 1; else if(a.Peso > b.Peso) return 0; else return a.a - a.b > b.a - b.b; } } 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][0] + 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 + 1] + 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; }

컴파일 시 표준 에러 (stderr) 메시지

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