Salut,va rog sa ma ajuta-ti la aceste 2 probleme
1) ce nu e corect in acest cod?????Va rog sa-mi spune-ti/modificati voi si imi lasa-ti in sectiunea de comentarii:
Problema 181 de pe site-ul pbinfo
2)Cerința
Se consideră un tablou unidimensional cu n elemente numere întregi, numerotate de la 1 la n, inițial toate nule. Asupra tabloului se fac m operații s d X cu semnificația: toate elementele cu indici cuprinși între s și d își măresc valoare cu X.
Să se afișeze tabloul după realizarea celor m operații.
Date de intrare
Programul citește de la tastatură numerele n m, iar apoi m triplete s d X, cu semnificația din enunț.
Date de ieșire
Programul va afișa pe ecran cele n elemente ale tabloului, separate prin exact un spațiu.
Restricții și precizări
1 ≤ n ≤ 200.000
1 ≤ m ≤ 200.000
1 ≤ s ≤ d ≤ n
-1000 ≤ X ≤ 1000
Exemplu
Intrare
10 6
8 10 2
3 10 -3
5 9 7
5 5 5
6 7 2
1 1 -1
Ieșire
-1 0 -3 -3 9 6 6 6 6 -1
Anexe:
Răspunsuri la întrebare
Răspuns de
2
Codul atasat nu are nici o legatura cu problema din cerinta, pare sa fie o problema care ordoneaza niste numere in mod crescator. Atata timp cat nu am fisierul de intrare si cerinta de la problema originala, nu am cum sa-mi dau cu parerea.
Oricum, codul pentru problema din cerinta este acesta:
#include <iostream>
using namespace std;
int main(){
int n,m,st,dr,X,i;
cout<<"Introduceti lungimea vectorului si nr de operatii: ";
cin>>n>>m;
int v[n+1];
for(i=1;i<=n;i++){
v[i]=0;
}
cout<<"Acum introduceti perechile stanga,dreapta,valoare aditionala X\n";
while(m>0){
cin>>st>>dr>>X;
for(i=st;i<=dr;i++){
v[i]=v[i]+X;
}
m--;
}
cout<<"Vectorul dupa operatii: \n";
for(i=1;i<=n;i++){
cout<<v[i]<<" ";
}
return 0;
}
Oricum, codul pentru problema din cerinta este acesta:
#include <iostream>
using namespace std;
int main(){
int n,m,st,dr,X,i;
cout<<"Introduceti lungimea vectorului si nr de operatii: ";
cin>>n>>m;
int v[n+1];
for(i=1;i<=n;i++){
v[i]=0;
}
cout<<"Acum introduceti perechile stanga,dreapta,valoare aditionala X\n";
while(m>0){
cin>>st>>dr>>X;
for(i=st;i<=dr;i++){
v[i]=v[i]+X;
}
m--;
}
cout<<"Vectorul dupa operatii: \n";
for(i=1;i<=n;i++){
cout<<v[i]<<" ";
}
return 0;
}
ginomarian2:
oki asta e pt 181 si pt a doua problema ?
Alte întrebări interesante
Matematică,
8 ani în urmă
Matematică,
8 ani în urmă
Matematică,
8 ani în urmă
Istorie,
9 ani în urmă
Matematică,
9 ani în urmă
Limba română,
9 ani în urmă
Engleza,
9 ani în urmă