N, P = map(int, input().split()) contests = [list(map(int, input().split())) for _ in range(N)] dp = [[float('inf')] * (P + 1) for _ in range(N + 1)] dp[0][0] = 0 for i in range(N): a = contests[i] for j in range(P + 1): for k in range(3, -1, -1): if k < 3: add = a[k] else: add = 1 if j + k <= P: dp[i + 1][j + k] = min(dp[i + 1][j + k], dp[i][j] + add) #print(*dp, sep='\n') print(dp[N][P] / N)