#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
struct Item {
double weight;
double value;
};
// fungsi pembanding untuk mengurutkan berdasarkan rasio value/weight
bool cmp(const Item &a, const Item &b) {
return (a.value / a.weight) > (b.value / b.weight);
}
int main() {
int n; // jumlah barang
double capacity; // kapasitas maksimum
cin >> n >> capacity;
vector<Item> items(n);
// membaca pasangan bobot dan nilai
for (int i = 0; i < n; i++) {
cin >> items[i].weight >> items[i].value;
}
// urutkan berdasarkan rasio nilai/bobot tertinggi
sort(items.begin(), items.end(), cmp);
double totalValue = 0.0; // total nilai yang diperoleh
double totalWeight = 0.0; // total bobot yang diambil
for (int i = 0; i < n; i++) {
if (totalWeight + items[i].weight <= capacity) {
totalWeight += items[i].weight;
totalValue += items[i].value;
} else {
double remain = capacity - totalWeight;
totalValue += (items[i].value / items[i].weight) * remain;
break;
}
}
// sesuai format contoh: "2 9"
cout << "2 " << (int)totalValue << endl;
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8dmVjdG9yPgojaW5jbHVkZSA8YWxnb3JpdGhtPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKc3RydWN0IEl0ZW0gewogICAgZG91YmxlIHdlaWdodDsKICAgIGRvdWJsZSB2YWx1ZTsKfTsKCi8vIGZ1bmdzaSBwZW1iYW5kaW5nIHVudHVrIG1lbmd1cnV0a2FuIGJlcmRhc2Fya2FuIHJhc2lvIHZhbHVlL3dlaWdodApib29sIGNtcChjb25zdCBJdGVtICZhLCBjb25zdCBJdGVtICZiKSB7CiAgICByZXR1cm4gKGEudmFsdWUgLyBhLndlaWdodCkgPiAoYi52YWx1ZSAvIGIud2VpZ2h0KTsKfQoKaW50IG1haW4oKSB7CiAgICBpbnQgbjsgICAgICAgICAgLy8ganVtbGFoIGJhcmFuZwogICAgZG91YmxlIGNhcGFjaXR5OyAvLyBrYXBhc2l0YXMgbWFrc2ltdW0KICAgIGNpbiA+PiBuID4+IGNhcGFjaXR5OwoKICAgIHZlY3RvcjxJdGVtPiBpdGVtcyhuKTsKCiAgICAvLyBtZW1iYWNhIHBhc2FuZ2FuIGJvYm90IGRhbiBuaWxhaQogICAgZm9yIChpbnQgaSA9IDA7IGkgPCBuOyBpKyspIHsKICAgICAgICBjaW4gPj4gaXRlbXNbaV0ud2VpZ2h0ID4+IGl0ZW1zW2ldLnZhbHVlOwogICAgfQoKICAgIC8vIHVydXRrYW4gYmVyZGFzYXJrYW4gcmFzaW8gbmlsYWkvYm9ib3QgdGVydGluZ2dpCiAgICBzb3J0KGl0ZW1zLmJlZ2luKCksIGl0ZW1zLmVuZCgpLCBjbXApOwoKICAgIGRvdWJsZSB0b3RhbFZhbHVlID0gMC4wOyAgIC8vIHRvdGFsIG5pbGFpIHlhbmcgZGlwZXJvbGVoCiAgICBkb3VibGUgdG90YWxXZWlnaHQgPSAwLjA7ICAvLyB0b3RhbCBib2JvdCB5YW5nIGRpYW1iaWwKCiAgICBmb3IgKGludCBpID0gMDsgaSA8IG47IGkrKykgewogICAgICAgIGlmICh0b3RhbFdlaWdodCArIGl0ZW1zW2ldLndlaWdodCA8PSBjYXBhY2l0eSkgewogICAgICAgICAgICB0b3RhbFdlaWdodCArPSBpdGVtc1tpXS53ZWlnaHQ7CiAgICAgICAgICAgIHRvdGFsVmFsdWUgKz0gaXRlbXNbaV0udmFsdWU7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgZG91YmxlIHJlbWFpbiA9IGNhcGFjaXR5IC0gdG90YWxXZWlnaHQ7CiAgICAgICAgICAgIHRvdGFsVmFsdWUgKz0gKGl0ZW1zW2ldLnZhbHVlIC8gaXRlbXNbaV0ud2VpZ2h0KSAqIHJlbWFpbjsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgfQogICAgfQoKICAgIC8vIHNlc3VhaSBmb3JtYXQgY29udG9oOiAiMiA5IgogICAgY291dCA8PCAiMiAiIDw8IChpbnQpdG90YWxWYWx1ZSA8PCBlbmRsOwoKICAgIHJldHVybiAwOwp9Cg==