当前位置: 首页 > news >正文

句容网站设计公司网站模板怎么引用

句容网站设计公司,网站模板怎么引用,企业推广网络营销外包服务,网站建设官网免费模板题意: n ∗ m n*m n∗m的矩阵,每个点可以选择一个值 a i , j k a_{i,j}k ai,j​k,然后你能获得 w ( i , j , k ) w(i,j,k) w(i,j,k)的得分,但是相邻两点之间的差值有限制,让你求最大得分。 考虑最小割。 每个点 ( i , j ) (i,j) (i,j)弄出一条长为 R…

题意:
n ∗ m n*m nm的矩阵,每个点可以选择一个值 a i , j = k a_{i,j}=k ai,j=k,然后你能获得 w ( i , j , k ) w(i,j,k) w(i,j,k)的得分,但是相邻两点之间的差值有限制,让你求最大得分。

考虑最小割。

每个点 ( i , j ) (i,j) (i,j)弄出一条长为 R + 1 R+1 R+1的链,其中 k − > k + 1 k -> k+1 k>k+1的流量为 w ( i , j , k ) w(i,j,k) w(i,j,k)

考虑限制,只需要从这条链的 k k k到相邻一条链的 k − d k-d kd连一无穷大的边,因为如果相邻的链选择的点 < k − d <k-d <kd那么就会有流量剩余,因此就能进行限制了。

#include<bits/stdc++.h>
#define rep(i,x,y) for(int i=x;i<=y;i++)
#define dwn(i,x,y) for(int i=x;i>=y;i--)
#define ll long long
using namespace std;
template<typename T>inline void qr(T &x){x=0;int f=0;char s=getchar();while(!isdigit(s))f|=s=='-',s=getchar();while(isdigit(s))x=x*10+s-48,s=getchar();x=f?-x:x;
}
int cc=0,buf[31];
template<typename T>inline void qw(T x){if(x<0)putchar('-'),x=-x;do{buf[++cc]=int(x%10);x/=10;}while(x);while(cc)putchar(buf[cc--]+'0');
}
const int N=5e5+10;
int n,m,k,d;
int h[N],st,ed,cur[N];
int tot=1,hd[N],ver[N*5],nxt[N*5],w[N*5];
int a[50][50][50],id[50][50][50],cnt;
void add(int x,int y,int z){tot++;ver[tot]=y;w[tot]=z;nxt[tot]=hd[x];hd[x]=tot;
}
void link(int x,int y,int z){add(x,y,z),add(y,x,0);
}
bool bt_h(){memset(h,0,sizeof(h));h[st]=1;queue<int>q;q.push(st);while(q.size()){int x=q.front();q.pop();for(int i=hd[x];i;i=nxt[i]){int y=ver[i];if(w[i]&&!h[y]){h[y]=h[x]+1;q.push(y);}}}return h[ed];
}
int findflow(int x,int f){if(x==ed)return f;int res=f,tt;for(int &i=cur[x];i;i=nxt[i]){int y=ver[i];if(w[i]&&h[y]==h[x]+1){tt=findflow(y,min(res,w[i]));w[i]-=tt,w[i^1]+=tt;res-=tt;if(!res)break;}}if(res==f)h[x]=0;return f-res;
}
int dicnic(){int ans=0;while(bt_h()){memcpy(cur,hd,sizeof(cur));ans+=findflow(st,1e9);}return ans;
}
const int dx[4]={-1,1,0,0};
const int dy[4]={0,0,-1,1};
void solve(){qr(n),qr(m),qr(k),qr(d);rep(ki,1,k){rep(i,1,n)rep(j,1,m)qr(a[ki][i][j]);}rep(ki,1,k+1){rep(i,1,n)rep(j,1,m)id[ki][i][j]=++cnt;}st=cnt+1,ed=st+1;rep(i,1,n)rep(j,1,m){link(st,id[1][i][j],1e7);link(id[k+1][i][j],ed,1e7);}rep(ki,1,k){rep(i,1,n)rep(j,1,m){link(id[ki][i][j],id[ki+1][i][j],a[ki][i][j]);}if(ki>d){rep(i,1,n)rep(j,1,m){rep(t,0,3){int x=i+dx[t],y=j+dy[t];if(1<=x&&x<=n&&1<=y&&y<=m){link(id[ki][i][j],id[ki-d][x][y],1e7);}}}}}qw(dicnic());puts("");
}
int main(){int tt;tt=1;while(tt--)solve();return 0;
}
http://www.yayakq.cn/news/361753/

相关文章:

  • 网站建设公司无锡网站建成后应该如何推广
  • 网站列表设计重庆软件制作
  • 浙江平安建设信息系统网站工信部网站备案多久
  • 做网站要找什么人监测网站空白栏目
  • 建设电影网站点击播放是乱页的建筑设计学什么的
  • 德州市建设局网站建设通网站
  • 杭州网站建设 seohtml5移动端手机网站开发流程图
  • 广州微网站建设机构建一个设计网站要多少钱
  • 桂林市网站设计房产信息网站系统
  • 荷兰网站域名公司管理系统名称大全
  • 做网站从哪里买域名企业查名
  • 怎么建设手机小说网站东莞网站推广教程
  • 营销型和展示型网站做网站总结作文
  • 东莞网站优化制作新冠疫苗接种率
  • 网站推广是干嘛的用dw怎么做网站后台
  • 汉中商城网站建设设计制作网站板面
  • 网站备案号链接wordpress 图片主页
  • 网站如何做支付宝接口网站网页设计教程
  • 企业创建网站建设公共网站的目的
  • 网站建设编辑工作总结看男科比较正规的医院
  • 个人搭建网站要多少钱温州建设集团网站
  • 佛山网站设计的外文名是网站建设的搜索功能
  • 找人做网站大概多少钱网站开发外包接单
  • 行业门户网站 自助建站做网站怎么收费多少
  • 网站设计公司飞沐娱乐网站建设ppt模板
  • 南阳提高网站排名django做的电子商务网站
  • 那个网站专门做婚纱相册ui设计师自我评价
  • 网站的工商网监怎么做进去家在深圳业主
  • 网站建设公司网站个人网页生成
  • 装修公司网站制作南京模板网站开发