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

有哪些网站做外贸的全免费建立自己的网站

有哪些网站做外贸的,全免费建立自己的网站,建筑工程网络计划,营销型网站建设服务电话大体思路是从终点反向做一次BFS得到一个层次图,然后从起点开始依次向更小的层跑,跑的时候选则字典序最小的,由于可能有多个满足条件的点,所以要把这层满足条件的点保存起来,在跑下一层。跑完一层就会得到这层最小的col…

大体思路是从终点反向做一次BFS得到一个层次图,然后从起点开始依次向更小的层跑,跑的时候选则字典序最小的,由于可能有多个满足条件的点,所以要把这层满足条件的点保存起来,在跑下一层。跑完一层就会得到这层最小的color号。

反省:这道题由于有自环和重边的存在,因此满足条件的一个点可能多次被加到队列,这样的复杂度将会成指数级。没注意到这点TLE了几发。。。如果一个点到另一个点的最短路径只有一条,就不用判断重复了。正是因为重边所以特别需要注意这点

示意图:

学习点:

1.层次图的构建,逆向思维。

2.注意不是简单图的情况,重边和自环。

3.搜索最致命的问题就是状态判重

#include<cstdio>
#include<cstring>
#include<vector>
#include<queue>//#define local
using namespace std;
const int INF = 1e9;
const int maxm = 2e5 + 10;
const int maxn = 1e5 + 5;
int n;struct Edge
{int v,c,nxt;
}e[maxm<<1];int d[maxn];
int cnt , head[maxn];//init head -1
inline void addEdge(int u,int v,int c)
{//  e[cnt].u = u;e[cnt].v = v;e[cnt].c = c;e[cnt].nxt = head[u];head[u] = cnt++;
}void bfs()
{queue<int> q;memset(d,-1,sizeof(d));q.push(n); d[n] = 0;int u,v,i;while(!q.empty()){u = q.front(); q.pop();if(u == 1) { printf("%d\n",d[u]); return ;}for(i = head[u]; ~i ; i = e[i].nxt ){v = e[i].v;if(~d[v]) continue;d[v] = d[u] + 1;q.push(v);}}
}bool vis[maxn];
void bfs2()
{queue<int> q;///复杂度写高了 没有给结点判断重复 指数级int u = 1,v, i;q.push(u);int c = INF;//最小colorvector<int> vec;//保存下一个层次的点memset(vis,false,sizeof(vis));while(!q.empty()||!vec.empty()) {if(q.empty()) { //保证队列里只有一个层次的点,如果队列空了,说明上一层的点都跑完了,这时候c一定是最小的for(i = 0;i < vec.size();i++) {int k = vec[i], v = e[k].v;if(e[k].c == c && !vis[v] ) {//vis[v] 重边if(e[k].v == n) { printf("%d\n",c); return ;}q.push(e[vec[i]].v); vis[v] = true;}}vec.clear();printf("%d ",c); c = INF;}u = q.front(); q.pop();for(i = head[u]; ~i ; i = e[i].nxt ) {v = e[i].v;if(d[u] - d[v] == 1 && e[i].c <= c) {vec.push_back(i);c = e[i].c;}}}
}int main()
{
#ifdef localfreopen("in.txt","r",stdin);
#endif // localint m;int u,v,c;while(~scanf("%d%d",&n,&m)){memset(head,-1,sizeof(head)); cnt = 0;while(m--) {scanf("%d%d%d",&u,&v,&c);if(u == v) continue;//忽略自环
         addEdge(u,v,c);addEdge(v,u,c);}bfs();bfs2();}return 0;
}

 

转载于:https://www.cnblogs.com/jerryRey/p/4598113.html

http://www.lbrq.cn/news/2368837.html

相关文章:

  • 自己的主机做网站服务器外贸seo软件
  • 认证空间如何显示网站沈阳专业seo关键词优化
  • linux 网站配置网络营销策划书1500字
  • wordpress悬浮登录插件兰州网络seo
  • wordpress自己修改css样式天津短视频seo
  • 丛台专业做网站如何搭建网站
  • 大连龙采做网站站长工具四叶草
  • 深圳市光明区seo全称是什么意思
  • 网站建设费的摊销企业所得税优惠政策
  • 安徽高端网站建设重庆seo是什么
  • 什么可以用手机做网站搜狗推广开户
  • html简单的网页设计长春seo代理
  • 专门做黄昏恋的网站seo关键词排名如何
  • 女装网站建设计划书手机推广平台有哪些
  • 希音电商网站seo搜索优化招聘
  • 做图片网站会侵权吗焊工培训内容
  • 常州网站建设方案托管哪有恶意点击软件买的
  • 网站空间如何升级北京seo优化外包
  • 做哪类网站赚钱图片搜索
  • 新闻门户网站什么意思初学seo网站推广需要怎么做
  • asp net做网站视频soso搜搜
  • 网站建设怎么链接表格总推荐榜总点击榜总排行榜
  • 宁晋网站建设网络公司搜多多搜索引擎入口
  • wordpress投稿管理苏州seo报价
  • 网站优化怎么做分录咖啡的营销推广软文
  • 北辰做网站公司网站互联网推广
  • 网站如何在360上做推广怎样制作一个网页
  • wordpress 适合外贸站软件开发公司有哪些
  • 中国商标查询网官网站长网站优化公司
  • 网站和做游戏网络推广费用高吗
  • 统计功效是什么?
  • Linux连接跟踪Conntrack:原理、应用与内核实现
  • java学习 day4 分布式锁
  • 29.安卓逆向2-frida hook技术-逆向os文件(二)IDA工具下载和使用
  • sqli-labs靶场通关笔记:第11-16关 POST请求注入
  • APK安装器(安卓端)一键解除VX限制!轻松安装各种手机应用