问题标题: 6886 饼干店进货

0
1
袁瑞琳
袁瑞琳
中级守护
中级守护
/*
贪心策略:按照单价从小到大排序
    遍历每个饼干
        如果需要的产量数够
            全买
            产量数减去当前饼干的产量数
        否则
            买:剩下的产量数×当前饼干的单价
            跳出循环
*/
#include <iostream> 
#include <algorithm> 
using namespace std; 
struct node{     
	long long p,s; 
}a[2000005]; 
bool cmp(node x,node y)
{     
	return x.p<y.p; 
} 
long long m,n,s; 
int main() {     
	cin>>m>>n;     
	for(int i=1;i<=n;i++)     
		cin>>a[i].p>>a[i].s;
	sort(a+1,a+1+n,cmp);
	for(int i=1;i<=n;i++)
    {         
		if(m>=a[i].s)
        {        
		    m-=a[i].s;
		    s+=a[i].s*a[i].p;
        }  
        else 
        {
            s+=m*a[i].p;
            break;
        }
	}     
	cout<<s;     
	return 0; 
}

WA 80分!

求大佬帮助!

袁瑞琳在2021-08-29 11:06:39追加了内容

啊!


0
0
我要回答