#include using namespace std; typedef long long ll; typedef vector vi; typedef vector vl; typedef pair pii; typedef pair pll; typedef int _loop_int; #define REP(i,n) for(_loop_int i=0;i<(_loop_int)(n);++i) #define FOR(i,a,b) for(_loop_int i=(_loop_int)(a);i<(_loop_int)(b);++i) #define FORR(i,a,b) for(_loop_int i=(_loop_int)(b)-1;i>=(_loop_int)(a);--i) #define DEBUG(x) cout<<#x<<": "< P; int n,p; int a[5252],b[5252],c[5252]; int dp[2][15252]; int main(){ scanf("%d%d",&n,&p); REP(i,n)scanf("%d%d%d",a+i,b+i,c+i); REP(i,3*n+1)REP(j,2)dp[j][i] = 1e9; int cur = 0; dp[cur][0] = 0; REP(i,n){ int vs[4] = {a[i],b[i],c[i],1}; REP(j,3*n+1)dp[cur^1][j] = 1e9; REP(j,3*n+1)REP(k,4){ if(j+k<=3*n)CHMIN(dp[cur^1][j+k],dp[cur][j]+vs[k]); } // REP(j,3*n+1)DEBUG(dp[cur^1][j]); // puts(""); cur ^= 1; } double ans = (double)dp[cur][p] / n; printf("%.10f\n",ans); return 0; }