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

烟台网站制作效果站长工具四叶草

烟台网站制作效果,站长工具四叶草,做网站的规范,展示型网站建设标准我讨厌图论。 这道题写了特别久&#xff0c;不过好歹也是写出来了…… 方法是先将橘子全部遍历一遍&#xff0c;做两件事&#xff1a;①找出所有连通的橘子②找出所有腐烂的橘子&#xff0c;设置一个vector<queue<int>>&#xff0c;每个vector元素代表一片连通的…

我讨厌图论。

这道题写了特别久,不过好歹也是写出来了……

方法是先将橘子全部遍历一遍,做两件事:①找出所有连通的橘子②找出所有腐烂的橘子,设置一个vector<queue<int>>,每个vector元素代表一片连通的橘子,其中的queue代表这片连通橘子中腐烂的橘子,这样当即就可以判断有没有橘子永远不会腐烂。

这里的int要表示行和列,我用了上一题并查集给我的思路,就是用row*列数+colume只用int就可以记录当前行列。

然后再遍历我们设置的vector<queue<int>>,每次取出队列头元素,遍历四个方向,将四个方向可以被腐烂的橘子全部加入队列,如果没有可以遍历的橘子了就比较最终时间和结果result,然后遍历下一片连通橘子。

代码挺长的:

class Solution {
public:int result=0;vector<queue<int>> rot;vector<vector<bool>> pass;vector<vector<int>> grid;void dfs(int i,int j){if(i>=0&&j>=0&&i<grid.size()&&j<grid[0].size()&&grid[i][j]!=0&&pass[i][j]==0) pass[i][j]=1;else return;if(grid[i][j]==2) rot[rot.size()-1].push(i*grid[0].size()+j);dfs(i+1,j);dfs(i-1,j);dfs(i,j+1);dfs(i,j-1);}bool spread(int i,int j,int row){if(i>=0&&j>=0&&i<grid.size()&&j<grid[0].size()&&grid[i][j]==1){grid[i][j]=2;rot[row].push(i*grid[0].size()+j);return 1;}else return 0;}int orangesRotting(vector<vector<int>>& grid) {this->grid=grid;this->pass=vector<vector<bool>> (grid.size(),vector<bool> (grid[0].size(),0));for(int i=0;i<grid.size();i++){for(int j=0;j<grid[0].size();j++){if(grid[i][j]!=0&&pass[i][j]==0){rot.push_back(queue<int> {});dfs(i,j);if(rot[rot.size()-1].empty()) return -1;}}}int result=0;for(int i=0;i<rot.size();i++){int r=0;int size=rot[i].size();bool b=0;while(!rot[i].empty()){int row=rot[i].front()/grid[0].size();int line=rot[i].front()%grid[0].size();rot[i].pop();size--;b|=spread(row+1,line,i);b|=spread(row-1,line,i);b|=spread(row,line+1,i);b|=spread(row,line-1,i);if(size==0){size=rot[i].size();if(b==0) break;else b=0;r++;}}result=max(result,r);}return result;}
};

http://www.dtcms.com/wzjs/116194.html

相关文章:

  • 金融网站建设公司排名360指数
  • 网站建设竞价托管什么意思培训平台
  • 开发网站性能监控如何做好网站推广优化
  • 长沙的网站制作公司有免费推广平台
  • 做视频网站需要流媒体吗做一个网站需要多少钱大概
  • 浏阳做网站报价最新实时大数据
  • 十大货源网站大全seo网站优化网站编辑招聘
  • 网站备案 山东核验点百度推广全国代理商排名
  • 网站建设 推荐晋城今日头条新闻
  • 做外贸免费的B2B网站一句吸引人的广告语
  • 青浦做网站公司深圳媒体网络推广有哪些
  • 自己做充值网站org域名注册
  • 酒店网站建设栏目分析济南疫情最新情况
  • 渝网互联重庆网站制作友情链接怎么购买
  • 注册有限公司需要多少钱免费的seo
  • 青海企业网站建设上海网站建设服务
  • 有路由器做网站嘉兴seo网络推广
  • 查看网站是否备案视频号怎么推广流量
  • docker架设wordpress湖北百度seo排名
  • 旅游网站项目计划书百度推广怎么赚钱
  • wordpress 小程序 教程seo独立站
  • wordpress地址(url)站点地址(url)百度搜索引擎官网
  • 做报名网站管理方面的培训课程
  • 香河县建设委员会网站专业培训seo的机构
  • 教做糕点的视频网站广告竞价
  • 做网站编辑要会什么百度金融
  • php制作新闻网站seo专业培训技术
  • 青海省网站建设公司外贸网站免费推广
  • 下模板做网站百度云资源链接分享群组
  • 哈尔滨市建设安全网站百度双十一活动