wordpress 文件分享,aso应用商店优化,发布的手机网站是乱码,有人用dw做网站吗正题
题目链接:https://www.luogu.org/problemnew/show/P2514 题目大意
有一个厂#xff0c;需要bbb吨煤炭#xff0c;然后第jjj个矿运到该厂的运费为c0,jc_{0,j}c0,j#xff0c;运行总费用为运费之和加上h0h_0h0
现在在1∼n1\sim n1∼n挑选一个建一个新厂#xff0…正题
题目链接:https://www.luogu.org/problemnew/show/P2514 题目大意
有一个厂需要bbb吨煤炭然后第jjj个矿运到该厂的运费为c0,jc_{0,j}c0,j运行总费用为运费之和加上h0h_0h0
现在在1∼n1\sim n1∼n挑选一个建一个新厂其余的煤矿都运到这个厂第jjj个矿运到该厂的运费为ci,jc_{i,j}ci,j运行费用为运费之和加上hih_ihi
求最小费用。 解题思路
很简单的一道贪心题显然我们将最优的bbb吨运到旧厂。
我们枚举建立在哪个厂然后对于每个矿将c0,j−ci,jc_{0,j}-c_{i,j}c0,j−ci,j进行从小到大排序然后将最小的bbb吨运入旧厂就行了。 codecodecode
#includecstdio
#includealgorithm
#includecstring
using namespace std;
const int N55,M55000;
struct node{int w,num;
}d[M];
int m,b,H,n,a[M],h[N],c[N][M],ans,mins2147483647,p;
bool cmp(node x,node y)
{return x.wy.w;}
int main()
{scanf(%d%d%d%d,m,b,H,n);for(int i1;im;i)scanf(%d,a[i]);for(int i1;in;i)scanf(%d,h[i]);for(int i0;in;i)for(int j1;jm;j)scanf(%d,c[i][j]);for(int i1;in;i){ansHh[i];for(int j1;jm;j)d[j](node){c[0][j]-c[i][j],a[j]},ansc[i][j]*a[j];sort(d1,d1m,cmp);int kb;for(int j1;jmk;j)if(kd[j].num)k-d[j].num,ansd[j].w*d[j].num;else if(kd[j].num)ansk*d[j].w,k0;if(ansmins)minsans,pi;}printf(%d\n%d,p,mins);
}