Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <bits/stdc++.h>
- #define READ freopen("in.txt", "r", stdin);
- #define mx 100005
- using namespace std;
- double value[mx], weight[mx];
- struct val
- {
- double per, kg;
- }item[mx];
- bool compare(val a, val b)
- {
- return a.per>b.per;
- }
- int main()
- {
- //READ
- double need, ans=0;
- int n;
- cin >> need >> n;
- need = need*need*need;
- for(int i = 0; i < n; i++)
- {
- cin >> weight[i];
- cin >> value[i];
- }
- //for(int i = 0; i < n; i++)
- for(int i = 0; i < n; i++)
- {
- item[i].per = value[i]/weight[i];
- item[i].kg = weight[i];
- }
- sort(item, item+n, compare);
- for(int i = 0; i < n; i++)
- {
- if(need==0) break;
- else if(item[i].kg<=need)
- {
- need -= item[i].kg;
- ans += (item[i].kg*item[i].per);
- }
- else
- {
- ans += (item[i].per*need);
- need = 0;
- }
- }
- cout << ans << endl;
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement