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

网站上添加百度地图导航包头网络推广公司

网站上添加百度地图导航,包头网络推广公司,常平做网站,深网网络网站正题 题目链接:https://www.cometoj.com/contest/73/problem/E?problem_id4124 题目大意 给出nnn个点mmm条边的一张有向图#xff0c;边有边权#xff0c;qqq次询问从点111走到点xxx的所有路径#xff08;可以重复经过任何点包括点xxx#xff09;中极差最大是多少。 1≤…正题 题目链接:https://www.cometoj.com/contest/73/problem/E?problem_id4124 题目大意 给出nnn个点mmm条边的一张有向图边有边权qqq次询问从点111走到点xxx的所有路径可以重复经过任何点包括点xxx中极差最大是多少。 1≤n≤2×105,1≤m≤5×1051\leq n\leq 2\times 10^5,1\leq m\leq 5\times 10^51≤n≤2×105,1≤m≤5×105 解题思路 首先肯定要tarjantarjantarjan缩点然后考虑怎么统计极差。 考虑到极差其实到某个位置的时候就已经不会再改变了而且这个到这个位置的路径一定是作为最小值或者最大值的。 所以我们可以维护一个路径上的最大值/最小值和最大极差然后每次考虑新的转移会不会更新极差就可以了。 时间复杂度O(nm)O(nm)O(nm) CometOJ评测机炸了代码没测就当过了吧… code #includecstdio #includecstring #includealgorithm #includevector #includequeue #includestack #define mp(x,y) make_pair(x,y) using namespace std; const int N2e510; int n,m,t,cnt,dfn[N],low[N],col[N],in[N]; int mi[N],mx[N],Mi[N],Mx[N],ans[N]; stackint s;queueint q;bool ins[N]; vectorpairint,int G[N],T[N]; void tarjan(int x){dfn[x]low[x]cnt;ins[x]1;s.push(x);for(int i0;iG[x].size();i){int yG[x][i].first;if(!dfn[y]){tarjan(y);low[x]min(low[x],low[y]);}else if(ins[y])low[x]min(low[x],dfn[y]);}if(dfn[x]low[x]){while(s.top()!x){col[s.top()]x;ins[s.top()]0;s.pop();}col[x]x;ins[x]0;s.pop();}return; } void Topsort(){for(int i1;in;i)if(!in[i])q.push(i);while(!q.empty()){int xq.front();q.pop();Mx[x]max(Mx[x],mx[x]);Mi[x]min(Mi[x],mi[x]);ans[x]max(ans[x],mx[x]-Mi[x]);ans[x]max(ans[x],Mx[x]-mi[x]);for(int i0;iT[x].size();i){int yT[x][i].first,wT[x][i].second;in[y]--;Mx[y]max(Mx[y],max(Mx[x],w));Mi[y]min(Mi[y],min(Mi[x],w));ans[y]max(ans[y],ans[x]);ans[y]max(ans[y],w-Mi[x]);ans[y]max(ans[y],Mx[x]-w);if(!in[y])q.push(y);}}return; } int main() {scanf(%d%d%d,n,m,t);for(int i1;im;i){int x,y,w;scanf(%d%d%d,x,y,w);G[x].push_back(mp(y,w));}tarjan(1);memset(mi,0x3f,sizeof(mi));memset(Mi,0x3f,sizeof(Mi));for(int x1;xn;x){for(int i0;iG[x].size();i){int yG[x][i].first,wG[x][i].second;ycol[y];if(col[x]y)mx[y]max(mx[y],w),mi[y]min(mi[y],w);else T[col[x]].push_back(mp(y,w)),in[y];}}Topsort();while(t--){int x;scanf(%d,x);if(x1||!col[x])puts(-1);else printf(%d\n,ans[col[x]]);}return 0; }
http://www.yutouwan.com/news/197039/

相关文章:

  • 网站建设 保密网络推广的方式方法
  • 小公司做网站需要注意什么问题哪里app开发公司好
  • dw怎么做秋季运动会网站分销平台合生元
  • 浙江建设厅网站那三类人员怎么制作自己的微信公众号
  • 企业型商务网站制作做法南阳新闻最新消息
  • 重庆微信网站建设报价表网站我优化
  • 琼海市规划建设局网站杭州建设网站 网站建设
  • 网站做产品的审核工作怎么样app设计尺寸规范
  • 专业团队的梗pc网站如何做seo
  • 做营销型网站一般要多少钱山西建设网官方网站
  • 怎样建设自己网站的后台做网站的怎样找客户
  • 个人网站建设法律规定龙采做网站要多少钱
  • 网站排名快速提升wordpress 自适应 汉化
  • 阿里logo设计网站广州安全教育平台账号登录入口
  • 门户网站制作价格表网站架构图的制作
  • 网站开发 哪家好海外seo培训
  • 杭州营销型网站建设好的学校网站设计
  • 网站建设与推广策划案案例前端项目开发流程
  • 电子商务网站开发概述东莞标志设计公司
  • 企业做pc网站需要什么资料爱用建站 小程序
  • 跨境电商网站开发文档龙岩网站建设推广
  • 上国外网站 dns陕西优秀的企业门户网站建设
  • 惠州网站建设兼职手机如何创网站
  • 路由器做php网站吗网站定制兴田德润实力强
  • adc网站建设wordpress quick chat
  • 装修行业在什么网站上做推广好中国的科技成就
  • 江苏建设造价信息网站广告设计图案
  • 企业网站建设劣势罗湖网站设计多少钱
  • oecms(php企业网站管理系统)营销网站建设是什么意思
  • 照片做视频的软件 模板下载网站网站名字词