首页 > 其他分享 >CF724E Goods transportation

CF724E Goods transportation

时间:2022-12-14 22:00:13浏览次数:96  
标签:CF724E transportation int Goods dp include 货物

链接:https://www.luogu.com.cn/problem/CF724E

题目描述:有\(n\)个城市,每个城市生产了\(p_{i}\)个货物,最多可以卖掉\(s_{i}\)个货物。对于每两个城市\((i,j)\),如果\(i<j\),则可以最多从\(i\)运送\(c\)个货物到\(j\)。注意不能反向运送,却可以在多个城市之间送来送去。求经过运输后,最多能卖掉多少个货物。

题解;看完题目先想\(dp\),但由于无法记录每一个货物的状态,不好转移。

"无法记录每一个货物的状态"\(?\),可以想到网络流。

考虑建出最大流模型,连这么几条边:

\((s,i,p_{i})\)

\((i,t,s_{i})\)

\((i,j,c)\)(\(i<=j\))

那么我们又可以把它看作最小割:

令\(dp_{i,j}\)表示前\(i\)个点,有\(j\)个与\(s\)仍相连的方案数,那么有两种情况:

\(1.\)断\((i,t)\),仅需\(s_{i}\)代价

\(2\).断\((s,i)\),需\(p_{i}+j\times c\)的代价,因为还有流\(s->p->i->t\)(\(p<i\))。

这样就可以\(O(n^2)\)了

#include<iostream>
#include<cstdio>
using namespace std;
int read()
{
	char c=0;
	int sum=0;
	while (c<'0'||c>'9')
		c=getchar();
	while ('0'<=c&&c<='9')
	{
		sum=sum*10+c-'0';
		c=getchar();
	}
	return sum;
}
long long minn=1e18,n,c,a[10001],b[10001],dp[2][10001],op;
int main()
{
	n=read(),c=read();
	for (int i=1;i<=n;++i)
		a[i]=read();
	for (int i=1;i<=n;++i)
		b[i]=read();
	for (int i=1;i<=n;++i)
		dp[0][i]=1e18; 
	for (int i=1;i<=n;++i)
	{
		op^=1;
		for (int j=0;j<=n;++j)
			dp[op][j]=1e18;
		for (int j=1;j<=n;++j)
			dp[op][j]=min(dp[op][j],dp[op^1][j-1]+b[i]);
		for (int j=0;j<=n;++j)
			dp[op][j]=min(dp[op][j],dp[op^1][j]+j*c+a[i]);
	}
	for (int j=0;j<=n;++j)
		minn=min(minn,dp[op][j]);
	printf("%lld\n",minn);
	return 0;
}

标签:CF724E,transportation,int,Goods,dp,include,货物
From: https://www.cnblogs.com/zhouhuanyi/p/16983725.html

相关文章

  • 冲销已过账外向交货单BAPI:WS_REVERSE_GOODS_ISSUE
    前台操作:VL09填写装运点和交货单点击定义日期,将输入的实际过账日期输入到本地日期中。点勾然后点击冲销点击绿色勾,冲销成功或错误,则均会出现如果对话框。......
  • DEMO:冲销交货单过账凭证WS_REVERSE_GOODS_ISSUE
    reportzdemo_vl09.parametersp_vbelntypevbeln_vl.data:lt_likptypetableoflikp.data:ls_likplikelineoflt_likp.data:lt_mesg......
  • DEMO:MB1B 311 移库 BAPI_GOODSMVT_CREATE
    *&---------------------------------------------------------------------**&ReportZDEMO_MB1B*&*&---------------------------------------------------------------......
  • HU_CREATE_GOODS_MOVEMENT报错:对象清单抬头数据中的差异
    对于已经创建HU的物料,调用HU_CREATE_GOODS_MOVEMENT 创建凭证的时候遇到了下面的问题情景是这样:先对ct00工厂的数据进行了bapi调用commit后又对CT20工厂数据进行操作这个......
  • BAPI_GOODSMVT_CREATE 带序列号
     API_GOODSMVT_CREATE物料移动,比如MB1B'343'"unblock'344'"block参考代码*&BAPIDATA:goodsmvt_headerLIKEbapi2017_gm_head_01,goodsmvt_codeLIKE......
  • BAPI_GOODSMVT_CREATE物料凭证创建…
    'BAPI_GOODSMVT_CREATE可以实现物料凭证创建和部分冲销全部冲销可以使用BAPI_GOODSMVT_CANCELFUNCTION 'BAPI_GOODSMVT_CREATE'        EXPORTING     ......
  • Transportation(最小生成树,虚拟节点)
    题意有\(N\)个岛屿,现在需要将它们联通起来。可以选择在岛上建立飞机场,花费为\(X_i\);也可以在岛上建立港口,花费为\(Y_i\);还可以在两个岛屿\(A_i\)和\(B_i\)之间修路,花费......
  • ABC-270 F - Transportation(kruskal)
    ABC-270F-Transportation(kruskal)考虑等价转换,建立两个虚点(分别表示airport和harbor的中转站)。这样就可以把点统一为边权问题。对于操作1和操作2,就是等价于向虚点连边......
  • 520813 - FAQ: BAPIs for goods
    SymptomThisnotecontainsfrequentlyaskedquestions/answersregarding'BAPIsforgoodsmovements'.Questions1.WherecanIfindthedocumentationforcallingth......
  • F2F-Discussing transportation
    Doyouliveintianjing?Inthepast,whatkindoftraffic/transportationdoyouusuallychoose,whenyouplantotravelsomewhere?在高峰时段inpeakhourHav......