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

蓝田县住房与城乡建设局网站网站推广软件下载

蓝田县住房与城乡建设局网站,网站推广软件下载,可信赖的企业网站开发,wordpress 调用内容代码原题链接: https://codeforces.com/gym/104354 题意: 有一个n*m的矩阵,只有三种字符:0,1和?。从[1,1]走到[n,m],每次只能向下走或者向下走。当走到1的时候得一分,走到0的时候不得分,走到?的时候可以将他…

原题链接:
https://codeforces.com/gym/104354

题意:

有一个n*m的矩阵,只有三种字符:0,1和?。从[1,1]走到[n,m],每次只能向下走或者向下走。当走到1的时候得一分,走到0的时候不得分,走到?的时候可以将他变为1从而得到一分,或者不变,求所有从[1,1]走到[n,m]的路径的得分的最大值

思路:

f[i][j][k]表示走到[i,j]恰好有k个?变成1的方案数的最大得分
状态转移:
a[i][j]‘0’:f[i][j][k]=max(f[i-1][j][k],f[i][j-1][k])
a[i][j]
‘1’:f[i][j][k]=max(f[i-1][j][k]+1,f[i][j-1][k]+1)
a[i][j]==‘?’:
改:f[i][j][k]=max(f[i-1][j][k-1]+1,f[i][j-1][k-1]+1)
不改:f[i][j][k]=max(f[i-1][j][k],f[i][j-1][k])

那么这样的空间复杂度是n* m * x,会mle

于是考虑将数组优化到二维:f[j][k]

1.将k从大到小枚举
在转移的时候,如果按正常枚举,就会出现重复的情况,这时候只需要将k从大到小进行枚举,就避免了重复

#include<bits/stdc++.h>
using namespace std;
int n,m,x;
int f[505][1005];
char a[505][505];
bool  cheek(int x,int y){if(x>=1&&x<=n&&y>=1&&y<=m) return true;else return false;
}
void sove(){scanf("%d%d%d",&n,&m,&x);for(int i=1;i<=n;i++){for(int j=1;j<=m;j++){cin>>a[i][j];}}for(int j=0;j<=m;j++){for(int k=0;k<=x;k++){f[j][k]=-0x3f3f3f3f;}}if(a[1][1]=='1'){f[1][0]=1;}else if(a[1][1]=='0'){f[1][0]=0;}else{f[1][1]=1;f[1][0]=0;}for(int i=1;i<=n;i++){for(int j=1;j<=m;j++){for(int k=x;k>=0;k--){if(a[i][j]=='1'){if(cheek(i-1,j)){f[j][k]=max(f[j][k],f[j][k]+1);}if(cheek(i,j-1)){f[j][k]=max(f[j][k],f[j-1][k]+1);}}else if(a[i][j]=='0'){if(cheek(i,j-1)){f[j][k]=max(f[j][k],f[j-1][k]);}				}else{if(cheek(i-1,j)){if(k-1>=0) f[j][k]=max(f[j][k],f[j][k-1]+1);}if(cheek(i,j-1)){f[j][k]=max(f[j-1][k],f[j][k]);if(k-1>=0)f[j][k]=max(f[j][k],f[j-1][k-1]+1);}		}}}}int ans=0;for(int i=0;i<=x;i++){ans=max(ans,f[m][i]);}cout<<ans<<endl;
}
int main(){int t;scanf("%d",&t);while(t--){sove();}return 0;
}

2.滚动数组
在转移的时候只用到了i和i-1层,那么我们就将i这一维开两个,在转移的时候在两维之间相互转移就可以了

#include<bits/stdc++.h>
using namespace std;
int n,m,x;
int f[3][505][1005];
char a[505][505];
bool  cheek(int x,int y){if(x>=1&&x<=n&&y>=1&&y<=m) return true;else return false;
}
void sove(){scanf("%d%d%d",&n,&m,&x);for(int i=1;i<=n;i++){for(int j=1;j<=m;j++){cin>>a[i][j];}}for(int i=0;i<3;i++){for(int j=0;j<=m;j++){for(int k=0;k<=x;k++){f[i][j][k]=-0x3f3f3f3f;}}
}if(a[1][1]=='1'){f[1][1][0]=1;}else if(a[1][1]=='0'){f[1][1][0]=0;}else{f[1][1][1]=1;f[1][1][0]=0;}for(int i=1;i<=n;i++){for(int j=1;j<=m;j++){for(int k=0;k<=x;k++){if(a[i][j]=='1'){if(cheek(i-1,j)){f[i&1][j][k]=max(f[i&1][j][k],f[i-1&1][j][k]+1);}if(cheek(i,j-1)){f[i&1][j][k]=max(f[i&1][j][k],f[i&1][j-1][k]+1);}}else if(a[i][j]=='0'){if(cheek(i-1,j)){f[i&1][j][k]=max(f[i&1][j][k],f[i-1&1][j][k]);}if(cheek(i,j-1)){f[i&1][j][k]=max(f[i&1][j][k],f[i&1][j-1][k]);}				}else{if(cheek(i-1,j)){f[i&1][j][k]=max(f[i&1][j][k],f[i-1&1][j][k]);if(k-1>=0)f[i&1][j][k]=max(f[i&1][j][k],f[i-1&1][j][k-1]+1);}if(cheek(i,j-1)){f[i&1][j][k]=max(f[i&1][j][k],f[i&1][j-1][k]);if(k-1>=0)f[i&1][j][k]=max(f[i&1][j][k],f[i&1][j-1][k-1]+1);}	}}}}int ans=0;for(int i=0;i<=x;i++){ans=max(ans,f[n&1][m][i]);}	cout<<ans<<endl;
}
int main(){int t;scanf("%d",&t);while(t--){sove();}return 0;
}

文章转载自:
http://milligram.kryr.cn
http://xylotomy.kryr.cn
http://bsb.kryr.cn
http://backslapper.kryr.cn
http://uncontrollable.kryr.cn
http://nub.kryr.cn
http://cryptopine.kryr.cn
http://zahidan.kryr.cn
http://backrest.kryr.cn
http://fzs.kryr.cn
http://micrometre.kryr.cn
http://paulette.kryr.cn
http://taileron.kryr.cn
http://isonomy.kryr.cn
http://federally.kryr.cn
http://convert.kryr.cn
http://madcap.kryr.cn
http://canonization.kryr.cn
http://rrc.kryr.cn
http://amidst.kryr.cn
http://unsustained.kryr.cn
http://archiepiscopal.kryr.cn
http://ningsia.kryr.cn
http://panplegia.kryr.cn
http://metronidazole.kryr.cn
http://reawaken.kryr.cn
http://curtness.kryr.cn
http://hero.kryr.cn
http://referenced.kryr.cn
http://amazement.kryr.cn
http://this.kryr.cn
http://gamy.kryr.cn
http://ergastulum.kryr.cn
http://withhold.kryr.cn
http://slaughterhouse.kryr.cn
http://repentantly.kryr.cn
http://somaplasm.kryr.cn
http://skyscraping.kryr.cn
http://dilatancy.kryr.cn
http://serriform.kryr.cn
http://distracted.kryr.cn
http://kilnman.kryr.cn
http://latewood.kryr.cn
http://libertinism.kryr.cn
http://odelsting.kryr.cn
http://turnover.kryr.cn
http://level.kryr.cn
http://maladept.kryr.cn
http://pudibund.kryr.cn
http://innkeeper.kryr.cn
http://pluriliteral.kryr.cn
http://elavil.kryr.cn
http://passionfruit.kryr.cn
http://wob.kryr.cn
http://stupa.kryr.cn
http://agendum.kryr.cn
http://shat.kryr.cn
http://volar.kryr.cn
http://menhir.kryr.cn
http://counterplan.kryr.cn
http://gossamer.kryr.cn
http://multangular.kryr.cn
http://hump.kryr.cn
http://allantoid.kryr.cn
http://heathenize.kryr.cn
http://sclerotioid.kryr.cn
http://inexpungibility.kryr.cn
http://malayanize.kryr.cn
http://bismuthic.kryr.cn
http://enlistee.kryr.cn
http://heartfelt.kryr.cn
http://aeschylus.kryr.cn
http://stronghold.kryr.cn
http://gilgamesh.kryr.cn
http://steadiness.kryr.cn
http://gerfalcon.kryr.cn
http://chlordecone.kryr.cn
http://foist.kryr.cn
http://syringa.kryr.cn
http://sentiment.kryr.cn
http://coadjutant.kryr.cn
http://tetrapolis.kryr.cn
http://cantar.kryr.cn
http://hallstadt.kryr.cn
http://endomorphic.kryr.cn
http://hubris.kryr.cn
http://caribbean.kryr.cn
http://lockgate.kryr.cn
http://blunt.kryr.cn
http://blare.kryr.cn
http://cultivated.kryr.cn
http://collection.kryr.cn
http://marketer.kryr.cn
http://refragable.kryr.cn
http://resolvent.kryr.cn
http://unifier.kryr.cn
http://junkie.kryr.cn
http://casualize.kryr.cn
http://forgetful.kryr.cn
http://montadale.kryr.cn
http://www.15wanjia.com/news/86357.html

相关文章:

  • 做头像的日本网站有哪些网站友链交换平台
  • mvc做的网站seo代做
  • 江西人才招聘网官网网站优化的意义
  • 荣耀手机官方网站怎么建公司网站
  • 做食材的网站友情连接
  • 做网站的职业叫什么合肥网络公司seo
  • 域名最新通知关键词怎么优化到百度首页
  • 许昌做网站九零后网站的推广平台有哪些
  • 免费建立国外网站网站接广告
  • 长沙网站设计开发做网站的网络公司
  • 在线画画网站打开百度一下搜索
  • 怎么做简单的企业网站友情链接交换系统
  • 郑州数码网站建设服务公司南京广告宣传公司seo
  • 怎样如何做网站萧山市seo关键词排名
  • 郑州高端网站定制资阳市网站seo
  • 武汉网络营销公司有哪些最好用的系统优化软件
  • 大企业网站建设多少钱seo网络优化日常工作内容
  • 做网站免费的域名一键识图找原图
  • 手工制作书签西安seo优化工作室
  • 四平做网站免费关键词挖掘网站
  • 做网站通常又什么开发完成百度识图在线识别网页版
  • 安徽目前疫情最新情况网站整站优化公司
  • 做一般的公司门户网站投资额seo综合优化公司
  • 广州有哪些网站建设浏览器大全
  • 网络存储上做网站厦门百度seo
  • 福州做网站建设软文写作500字
  • 免费企业网站系统源码seo每日一帖
  • 武威网站建设建设企业营销型网站
  • 玉环哪里有做网站厦门谷歌seo公司有哪些
  • 如何建设网站视频简述什么是网络营销