APP安装
题号:NC17070
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 32 M,其他语言64 M
Special Judge, 64bit IO Format: %lld

题目描述

    小橙要安装n个app,安装一个app分为两步,先下载app,在下载完以后才能安装。每个app有3个属性ai,bi,ci。ai表示app的大小(Bit),bi表示下载这个app时的最高速度(Bit/s),ci表示安装它的时间(秒数)。你的网速最高是K Bit/s。下载可以任意分配下载速度(可以是实数),但是任意时刻下载每个app的速度之和不能超过最高网速K。安装必须从第1个app按顺序装到第n个。求安装完所有app的最快时间。

输入描述:

第一行两个整数n, K。
接下来n行每行三个正整数ai, bi, ci。
1≤n≤100,000
1≤K≤1,000,000,000
1≤ai, bi, ci≤1,000,000,000
bi不会超过K

输出描述:

一个实数表示最快时间。
保留6位小数(相对误差在1e-6内即正确)。
示例1

输入

复制
2 5
8 4 3
11 3 1

输出

复制
6.000000
示例2

输入

复制
2 4
5 3 1
6 2 2

输出

复制
5.250000