@[c0621zy](/user/776698) 数组开小了哦;
by xingcode @ 2022-12-15 20:29:07
@[c0621zy](/user/776698) 0≤n,a[i]≤2×10^6
by xingcode @ 2022-12-15 20:29:59
~~其实我曾开到100~~【旺柴】
by xingcode @ 2022-12-15 20:31:04
@[c0621zy](/user/776698) 代码如下:
```cpp
#include<bits/stdc++h>//万能头防抄袭
using namespace std;//好习惯
int n,m;//在int内
struct ss{//结构体
int w,v;//要分清楚
}p[2000010];//数组要开大
bool p(ss a,ss b)//排序函数
{
return a.w<b.w;//排序
}
int main()//主函数
{
cin>>m>>n;//输入m,n。
int s=0;//初始化答案为0;
if(m==0&&n==0)//特判0 0
//否则会WA。
{
cout<<0;//输出0;
return 0;//结束
}
for(int i=1;i<=n;i++)
{
cin>>p[i].w>>p[i].v;//输入
}
sort(p+1,p+n+1,P);//排序
//sort大法好!!!
for(int i=1;i<=n;i++)
{
if(m>=p[i].v)//贪心
{
m-=p[i].v;//装不完?
//那你快装呀!
s+=p[i].v*p[i].w;
}
else//装的完?
{
s+=p[i].w*m;//剩下的全装了!
break;//退出
}
}
cout<<s;//输出
return 0;//结束
}
by xingcode @ 2022-12-15 20:41:28
本来是想发题解,没过【哭】,就送给你这个有缘人吧!
by xingcode @ 2022-12-15 20:43:40
@[xingcode](/user/787349)
十分感谢!
by c0621zy @ 2022-12-29 19:58:34