1 条题解

  • 0
    @ 2023-7-30 15:29:06

    水题

    #include<bits/stdc++.h>
    
    using namespace std;
    
    int main()
    {
    
        int n,m;
        cin >>n >>m;
        int a[m+1],b[m+1];
        for(int i=1; i<=m; i++){
            cin >>a[i] >>b[i];
        }
        for(int i=m; i>1; i--){
            for(int j=1; j<i; j++){
                if(a[j]>a[j+1]){
                    swap(a[j],a[j+1]);
                    swap(b[j],b[j+1]);
                }
            }
        }
        int ans=0;
        for(int i=1; i<=m; i++){
            if(n-b[i]>=0){
                ans=a[i]*b[i]+ans;
                n=n-b[i];
            }
            else{
                ans=n*a[i]+ans;
                n=0;
            }
            if(n==0){
                break;
            }
        }
        cout<<ans;
    
    	return 0;
    }
    
    • 1

    信息

    ID
    758
    时间
    1000ms
    内存
    64MiB
    难度
    7
    标签
    递交数
    150
    已通过
    34
    上传者