Submission #15526

#TimeUsernameProblemLanguageResultExecution timeMemory
15526ggoh최적의 능력 구성 (kriii3_C)C++98
25 / 62
1000 ms1084 KiB
#include<cstdio> #include<algorithm> #include<vector> #include<cmath> int a,i,p[22],d[22],l,x[22]; double P[22],D[22]; double m,s; double max(double XX,double YY){return XX>YY?XX:YY;} void uu(int K,double S) { if(K==0) { s+=S; } else { for(int U=0;U<l;U++) { if(x[U]==0) { x[U]=1; uu(K-1,S*(double)((double)1-P[U]/(double)100)); x[U]=0; } } } } void f(int xx) { if(xx==a) { double per=0,sum=0; for(int j=0;j<l;j++) { sum=0; x[j]=1; for(int k=0;k<l;k++) { s=0; uu(k,(double)1); for(int L=0;L<=k;L++) { s/=(double)(l-L); } sum+=s; } x[j]=0; per+=sum*(P[j]/100)*D[j]; } m=max(m,per); } else { f(xx+1); P[l]=(double)p[xx]; D[l]=(double)d[xx]; l++; f(xx+1); l--; P[l]=0; D[l]=0; } } main() { scanf("%d",&a); for(i=0;i<a;i++) { scanf("%d%d",&p[i],&d[i]); } f(0); printf("%.10lf",m); }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...