salve, scusate se rompo le scatole ancora, ma del resto il forum in parte serve anche a questo… il codice che ho fatto mi risulta corretto, solo che non so come massimizzarlo per ottenere il punteggio completo.
L’esercizio è Scavi Fortunati
Qui sotto allego il mio codice e ringrazio in anticipo
#include <iostream>
#include <vector>
#include<bits/stdc++.h>
using namespace std;
int i,j;
int k=0;
///Ridimensiona la matrice terreno
void ridimensiona(int R, int C, vector<vector<int>> terreno) {
terreno[i].resize(R,0);
for (int i=0; i<R; i++) {
terreno[i].resize(C,0);
}
}
void scavi(int R, int C, int Q, vector<int> &x1, vector<int> &y1,vector<int> &x2, vector<int> &y2, vector<int> &p, vector<vector<int> > &terreno){
ridimensiona(R,C,terreno);
///eseguo le operazioni che sono in tutto k=q-1
while(k<Q){
///segno la profondita del terreno dalla posizione x1,y1 a x2,y2
for(i=x1[k];i<=x2[k] && i<R;i++){
for(j=y1[k];j<=y2[k] && j<C;j++){
terreno[i][j]+=p[k];
}
}
k++;
}
}