蒟蒻AC后有一个问题
查看原帖
蒟蒻AC后有一个问题
540665
Tjqq楼主2023/5/21 22:09

斜优部分:

for(int i=1; i<=n; i++) {
	while(l<r && K(q[l],q[l+1])<-dis[i]) l++;
	dp[i]=tot-dis[q[l]]*sum[q[l]]-dis[i]*(sum[i]-sum[q[l]]);
	ans=min(ans,dp[i]);
	while(l<r &&K(q[r],q[r-1])>K(q[r-1],i)) r--;
	q[++r]=i;
}	

其中K函数是求经过两个点直线的解析式

关于第二个while的地方写K(q[r],q[r-1])>K(q[r-1],i)和K(q[r],q[r-1])>K(q[r],i)都可以通过,请问是数据问题还是写法不同但都正确?

2023/5/21 22:09
加载中...