#2644
clase
Într-o școală sunt n
clase, fiecare având un număr diferit de elevi. Școală primește m
pachete cu cărți, fiecare cu un număr diferit de cărți. Pentru ca o clasa să primească un pachet, numărul elevilor din acea clasa trebuie să fie egal cu numărul cărților din pachet. Să se determine câte clase primesc un pachet de cărți.
Problema | clase | Operații I/O |
clase.in /clase.out
|
---|---|---|---|
Limita timp | 0.01 secunde | Limita memorie |
Total: 1 MB
/
Stivă 1 MB
|
Id soluție | #52465549 | Utilizator | |
Fișier | clase.cpp | Dimensiune | 517 B |
Data încărcării | 30 Septembrie 2024, 22:34 | Scor / rezultat | 0 puncte |
clase.cpp: In function 'int main()': clase.cpp:3:240: warning: unused variable 'ok' [-Wunused-variable] int main() { long long int a[200001][2],x,n,m,cnt=0; cin>>n; for(int i=1;i<=n;i++) { cin>>a[i][1]; if(a[i][1]==a[i-1][1]) a[i][2]=cnt; else a[i][2]=++cnt; } cin>>m; a[0][2]=0; a[n+1][2]=++cnt; for(int i=1;i<=m;i++) { cin>>x; int li=1,lf=n,ok=0,mij; mij=li+(lf-li)/2; while(li<=lf && a[mij][1]!=x) { if(a[mij][1]>x) { li=mij+1; } else if(a[mij][1]<x) { lf=mij-1; } mij=li+(lf-li)/2; } if(a[mij][1]==x) { cout<<a[mij][2]<<endl; } else cout<<a[lf][2]+1<<endl; } ^ clase.cpp:3:129: warning: array subscript is above array bounds [-Warray-bounds] int main() { long long int a[200001][2],x,n,m,cnt=0; cin>>n; for(int i=1;i<=n;i++) { cin>>a[i][1]; if(a[i][1]==a[i-1][1]) a[i][2]=cnt; else a[i][2]=++cnt; } cin>>m; a[0][2]=0; a[n+1][2]=++cnt; for(int i=1;i<=m;i++) { cin>>x; int li=1,lf=n,ok=0,mij; mij=li+(lf-li)/2; while(li<=lf && a[mij][1]!=x) { if(a[mij][1]>x) { li=mij+1; } else if(a[mij][1]<x) { lf=mij-1; } mij=li+(lf-li)/2; } if(a[mij][1]==x) { cout<<a[mij][2]<<endl; } else cout<<a[lf][2]+1<<endl; } ^ clase.cpp:3:147: warning: array subscript is above array bounds [-Warray-bounds] int main() { long long int a[200001][2],x,n,m,cnt=0; cin>>n; for(int i=1;i<=n;i++) { cin>>a[i][1]; if(a[i][1]==a[i-1][1]) a[i][2]=cnt; else a[i][2]=++cnt; } cin>>m; a[0][2]=0; a[n+1][2]=++cnt; for(int i=1;i<=m;i++) { cin>>x; int li=1,lf=n,ok=0,mij; mij=li+(lf-li)/2; while(li<=lf && a[mij][1]!=x) { if(a[mij][1]>x) { li=mij+1; } else if(a[mij][1]<x) { lf=mij-1; } mij=li+(lf-li)/2; } if(a[mij][1]==x) { cout<<a[mij][2]<<endl; } else cout<<a[lf][2]+1<<endl; } ^ clase.cpp:3:172: warning: array subscript is above array bounds [-Warray-bounds] int main() { long long int a[200001][2],x,n,m,cnt=0; cin>>n; for(int i=1;i<=n;i++) { cin>>a[i][1]; if(a[i][1]==a[i-1][1]) a[i][2]=cnt; else a[i][2]=++cnt; } cin>>m; a[0][2]=0; a[n+1][2]=++cnt; for(int i=1;i<=m;i++) { cin>>x; int li=1,lf=n,ok=0,mij; mij=li+(lf-li)/2; while(li<=lf && a[mij][1]!=x) { if(a[mij][1]>x) { li=mij+1; } else if(a[mij][1]<x) { lf=mij-1; } mij=li+(lf-li)/2; } if(a[mij][1]==x) { cout<<a[mij][2]<<endl; } else cout<<a[lf][2]+1<<endl; } ^ clase.cpp:3:185: warning: array subscript is above array bounds [-Warray-bounds] int main() { long long int a[200001][2],x,n,m,cnt=0; cin>>n; for(int i=1;i<=n;i++) { cin>>a[i][1]; if(a[i][1]==a[i-1][1]) a[i][2]=cnt; else a[i][2]=++cnt; } cin>>m; a[0][2]=0; a[n+1][2]=++cnt; for(int i=1;i<=m;i++) { cin>>x; int li=1,lf=n,ok=0,mij; mij=li+(lf-li)/2; while(li<=lf && a[mij][1]!=x) { if(a[mij][1]>x) { li=mij+1; } else if(a[mij][1]<x) { lf=mij-1; } mij=li+(lf-li)/2; } if(a[mij][1]==x) { cout<<a[mij][2]<<endl; } else cout<<a[lf][2]+1<<endl; } ^ clase.cpp:3:418: warning: array subscript is above array bounds [-Warray-bounds] int main() { long long int a[200001][2],x,n,m,cnt=0; cin>>n; for(int i=1;i<=n;i++) { cin>>a[i][1]; if(a[i][1]==a[i-1][1]) a[i][2]=cnt; else a[i][2]=++cnt; } cin>>m; a[0][2]=0; a[n+1][2]=++cnt; for(int i=1;i<=m;i++) { cin>>x; int li=1,lf=n,ok=0,mij; mij=li+(lf-li)/2; while(li<=lf && a[mij][1]!=x) { if(a[mij][1]>x) { li=mij+1; } else if(a[mij][1]<x) { lf=mij-1; } mij=li+(lf-li)/2; } if(a[mij][1]==x) { cout<<a[mij][2]<<endl; } else cout<<a[lf][2]+1<<endl; } ^ clase.cpp:3:447: warning: array subscript is above array bounds [-Warray-bounds] int main() { long long int a[200001][2],x,n,m,cnt=0; cin>>n; for(int i=1;i<=n;i++) { cin>>a[i][1]; if(a[i][1]==a[i-1][1]) a[i][2]=cnt; else a[i][2]=++cnt; } cin>>m; a[0][2]=0; a[n+1][2]=++cnt; for(int i=1;i<=m;i++) { cin>>x; int li=1,lf=n,ok=0,mij; mij=li+(lf-li)/2; while(li<=lf && a[mij][1]!=x) { if(a[mij][1]>x) { li=mij+1; } else if(a[mij][1]<x) { lf=mij-1; } mij=li+(lf-li)/2; } if(a[mij][1]==x) { cout<<a[mij][2]<<endl; } else cout<<a[lf][2]+1<<endl; } ^
Test | Timp | Mesaj evaluare | Scor posibil | Scor obținut | ||
---|---|---|---|---|---|---|
1 | 0 secunde | Caught fatal signal 11 | 10 | 0 | Exemplu | |
2 | 0 secunde | Caught fatal signal 11 | 10 | 0 | ||
3 | 0 secunde | Caught fatal signal 11 | 20 | 0 | ||
4 | 0 secunde | Caught fatal signal 11 | 20 | 0 | ||
5 | 0 secunde | Caught fatal signal 11 | 20 | 0 | ||
6 | 0 secunde | Caught fatal signal 11 | 20 | 0 | ||
Punctaj total | 0 |
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema clase face parte din prima categorie. Soluția propusă de tine va fi evaluată astfel:
Suma punctajelor acordate pe testele utilizate pentru verificare este 100. Astfel, soluția ta poate obține cel mult 100 de puncte, caz în care se poate considera corectă.