Thứ Bảy, 4 tháng 12, 2021

muabi c++

#include <bits/stdc++.h>
using namespace std;

struct dat{
    int a, b;
};

int n, m, s = 0;
dat a[100005];

void nhap(){
    scanf("%d%d", &m, &n);
    for ( int i = 1; i <= n; i++ ){
        scanf("%d%d", &a[i].a, &a[i].b);
    }
}

bool check(dat x, dat y){
    if (x.b > y.b) return true;
    return false;
}

void xuly(){
    sort(a+1, a+1+n, check);
    for (int i = 1; i <= n; i++){
        if ( m >= a[i].a){
            m -= a[i].a;
            s += a[i].a*a[i].b;
        } else {
            s += m * a[i].b;
            m = 0;
        }
        if ( m == 0 ){
            break;
        }
    }
    cout << s << endl;
}

int main(){
    freopen("MUABI.INP", "r", stdin);
    freopen("MUABI.OUT", "w", stdout);
    nhap();
    xuly();
}

Không có nhận xét nào:

Đăng nhận xét

Lưu ý: Chỉ thành viên của blog này mới được đăng nhận xét.