Ciao a tutti, come da titolo sto tentando il facile problema Disk Failure 2 solo che non comprendo perché la mia soluzione non funziona. Qui posto il mio codice in C++, grazie a tutti per l’aiuto (prima c’era A[i]=0 nel codice perché stavo testando)
#include <iostream>
#include <fstream>
#include <vector>
using namespace std;
int main() {
// uncomment the following lines if you want to read/write from files
// ifstream cin("input.txt");
// ofstream cout("output.txt");
int N, T;
cin >> N >> T;
bool possibile=false;
vector<int> A(N), B(N);
int i;
for (i=0; i < N; i++) {
cin >> A[i] >> B[i];
}
for(i=0; i<N; i++){
if(24-B[i]+A[i+1]>=T){
possibile = true;
break;
}
}
cout << ((possibile) ? i : -1)<<endl; // print the result
return 0;
}
Edit, spiego il codice: dopo aver dato l’input di tutto, finché i è minore del numero di giorni se il tempo rimanente nel giorno i sommato al tempo che si ha nel giorno dopo prima che inizi il contest è maggiore o uguale al tempo che ci vuole per riparare i dischi allora il bool è true e manda in output i sennò se non trova nessun giorno manda in output -1