/* * yuki472.cpp * * Created on: 2017/03/12 * Author: Nishio */ #include #define REP(i,n,N) for(int i=n;i>N>>P; REP(i,0,3*N+1) f[i]=i<<30; int a[4]; f[P]=0; REP(i,0,N){ REP(j,0,3*N+1) t[j]=1<<30; cin>>a[0]>>a[1]>>a[2]; a[3]=1; REP(j,0,P+1) REP(k,0,4) if(j>=k) t[j-k]=min(t[j-k],f[j]+a[k]); swap(t,f); } printf("%.6lf\n",1.*f[0]/N); return 0; }