Nu aveti permisiuni pentru a descarca fisierul grader_test1.ok
Diferente pentru utilizator/apocalypto intre reviziile #194 si #195
Nu exista diferente intre titluri.
Diferente intre continut:
* ==user(user="laurion" type="tiny")==
Varianta de 100 de puncte using namespace std; #include<iostream> #include<fstream> #include<vector> #include<algorithm> #include<iomanip> #define pb push_back ofstream fout("xmoto.out"); struct nod{ double a,b,k,q,v;}; nod a[50005]; double v; vector<double> ans; int N; double L,sa,sb,sq,sk; double SA,SB,SK,SQ; bool cmp(nod i, nod j) { return (i.v<j.v); } void cit() { int i,ii; ifstream fin("xmoto.in"); fin>>N>>L; for(i=1;i<=N;i++) { fin>>a[i].a>>a[i].b>>a[i].k>>a[i].q>>a[i].v; } sort(a+1,a+1+N,cmp); /*for(i=1;i<=N;i++) { cout<<a[i].a<<" "<<a[i].b<<" "<<a[i].k<<" "<<a[i].q<<" "<<a[i].v<<"\n"; }*/ for(i=1;i<=N;i++) { SA+=a[i].a; SK+=a[i].k; } sa=0; sb=0; sk=0; sq=0; for(i=0;i<=N;i++) { /*for(ii=1;ii<=i;ii++) { sb+=a[ii].b; sq+=a[ii].q; }*/ if(i>0) { sb+=a[i].b; sq+=a[i].q; } /*for(ii=i+1;ii<=N;ii++) { sa+=a[ii].a; sk+=a[ii].k; }*/ sa=SA; sk=SK; SA-=a[i+1].a; SK-=a[i+1].k; if(sa+sb!=0) { v=(L-(sk+sq))/(sa+sb); if(v<=a[i+1].v || i==N) { if(v>a[i].v || i==0) { ans.pb(v); } } } // cout<<L<<"\n"; // cout<<sk<<" "<<sq<<" "<<sk+sq<<" "<<"\n"; //cout<<sa<<" "<<sb<<" "<<sa+sb<<" "<<"\n\n\n"; } fout<<ans.size()<<"\n"; vector<double>::iterator it; setprecision(6); for(it=ans.begin();it<ans.end();it++) { fout<<fixed<<*it<<"\n"; } fin.close(); } int main() { cit(); fout.close(); return 0; }
http://ideone.com/nr9jp http://ideone.com/Sg8si « O generatiune decazuta nu e capabila de recunoastere nici binele, nici adevarul. Binele unde-l gaseste il uraste – de acolo preponderenta elementului rau. Adevarul nu e capabila de a-l recunoaste. » Mihai Eminescu