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

门户网站开发费需入无形资产淘宝做基础销量怎么网站

门户网站开发费需入无形资产,淘宝做基础销量怎么网站,如何自己做网址,现在哪个公司的网络比较好problem luogu-P3350 solution 据说#xff0c;网格图最短路用分治是一个人人皆知的套路。对不起我不是人 类比整体二分的算法流程。 考虑在一个 (xl,yl)−(yl,yr)(xl,yl)-(yl,yr)(xl,yl)−(yl,yr) 矩阵内处理 [ql,qr][ql,qr][ql,qr] 的询问。 以矩阵的中界线 mid\text{…problem luogu-P3350 solution 据说网格图最短路用分治是一个人人皆知的套路。对不起我不是人 类比整体二分的算法流程。 考虑在一个 (xl,yl)−(yl,yr)(xl,yl)-(yl,yr)(xl,yl)−(yl,yr) 矩阵内处理 [ql,qr][ql,qr][ql,qr] 的询问。 以矩阵的中界线 mid\text{mid}mid 将矩阵划成两半显然哪一维更长划哪一维。 以中界线上的每一个点为起点跑一遍最短路然后更新所有需要跨过这条线的询问的答案相当于是强制路线必须经过该点。 如果不需要跨过这条线即询问的起终点均在线的某一侧就分成 l,rl,rl,r 两个部分继续分治下去。 时间复杂度好像都说是 O(NNlog⁡N)O(N\sqrt{N}\log N)O(NN​logN)。 具体见代码即可明白。 code #include bits/stdc.h using namespace std; #define maxn 20005 #define maxq 100005 #define Pair pair int, int struct node { int u, v, id; }q[maxq], l[maxq], r[maxq]; vector Pair G[maxn]; priority_queue Pair, vector Pair , greater Pair que; int x[maxn], y[maxn], dis[maxn], ans[maxq]; int n, m, Q;int id( int i, int j ) { return (i - 1) * m j; }void dijkstra( int s, int xl, int xr, int yl, int yr ) {for( int i xl;i xr;i )for( int j yl;j yr;j )dis[id(i, j)] 0x7f7f7f7f;que.push( make_pair( dis[s] 0, s ) );while( ! que.empty() ) {int u que.top().second, w que.top().first;que.pop();if( dis[u] ^ w ) continue;for( int i 0;i G[u].size();i ) {int v G[u][i].first; w G[u][i].second;if( x[v] xl or x[v] xr or y[v] yl or y[v] yr ) continue;if( dis[v] dis[u] w )que.push( make_pair( dis[v] dis[u] w, v ) );}} }void solve( int ql, int qr, int xl, int xr, int yl, int yr ) {if( ql qr or xl xr or yl yr ) return;int cntl 0, cntr 0;if( xr - xl yr - yl ) {int mid xr xl 1;for( int i yl;i yr;i ) {dijkstra( id(mid, i), xl, xr, yl, yr );for( int j ql;j qr;j )ans[q[j].id] min( ans[q[j].id], dis[q[j].u] dis[q[j].v] );}for( int i ql;i qr;i ) {if( x[q[i].u] mid and x[q[i].v] mid ) l[ cntl] q[i];if( x[q[i].u] mid and x[q[i].v] mid ) r[ cntr] q[i];}for( int i 1;i cntl;i ) q[ql i - 1] l[i];for( int i 1;i cntr;i ) q[ql cntl i - 1] r[i];solve( ql, ql cntl - 1, xl, mid - 1, yl, yr );solve( ql cntl, ql cntl cntr - 1, mid 1, xr, yl, yr );}else {int mid yr yl 1;for( int i xl;i xr;i ) {dijkstra( id(i, mid), xl, xr, yl, yr );for( int j ql;j qr;j )ans[q[j].id] min( ans[q[j].id], dis[q[j].u] dis[q[j].v] );}for( int i ql;i qr;i ) {if( y[q[i].u] mid and y[q[i].v] mid ) l[ cntl] q[i];if( y[q[i].u] mid and y[q[i].v] mid ) r[ cntr] q[i];}for( int i 1;i cntl;i ) q[ql i - 1] l[i];for( int i 1;i cntr;i ) q[ql cntl i - 1] r[i];solve( ql, ql cntl - 1, xl, xr, yl, mid - 1 );solve( ql cntl, ql cntl cntr - 1, xl, xr, mid 1, yr );} }int main() {scanf( %d %d, n, m );for( int i 1;i n;i )for( int j 1, x;j m;j ) {scanf( %d, x );G[id(i, j)].push_back( make_pair( id(i, j 1), x ) );G[id(i, j 1)].push_back( make_pair( id(i, j), x ) );}for( int i 1;i n;i )for( int j 1, x;j m;j ) {scanf( %d, x );G[id(i, j)].push_back( make_pair( id(i 1, j), x ) );G[id(i 1, j)].push_back( make_pair( id(i, j), x ) );}for( int i 1;i n;i )for( int j 1;j m;j )x[id(i, j)] i, y[id(i, j)] j;scanf( %d, Q );for( int i 1, a1, b1, a2, b2;i Q;i ) {scanf( %d %d %d %d, a1, b1, a2, b2 );q[i] (node){ id(a1, b1), id(a2, b2) }, q[i].id i;}memset( ans, 0x7f, sizeof( ans ) );solve( 1, Q, 1, n, 1, m );for( int i 1;i Q;i ) printf( %d\n, ans[i] );return 0; }
http://www.sadfv.cn/news/207122/

相关文章:

  • 乐清 网站建设石家庄信息门户网站定制
  • 电子商务网站建设的方法有哪些方面最新热搜新闻事件
  • 如何建设专题网站wordpress首页文章两列
  • 凡科网建站系统源码找人做网站排名优化
  • 各大网站代下单怎么做wordpress评论去掉网址
  • 国外中文网站排行岳阳公司网站制作
  • 傻瓜自助建站软件学做衣服的网站有哪些
  • 更好的网站制作朝阳网站搭建公司
  • 苏州虎丘区建设局网站个人静态网页制作
  • 网站前后台代码怎么做微网站推广
  • 单位网站建设费合同印花税工信部icp备案
  • 沈阳网站建设-中国互联dw网页制作使用方法
  • 做微信网站的职位徐州整站优化
  • 中国建设银行网站 个人客户黄骅港有什么好玩的
  • 网站建设 需要ae吗怎么在网站中添加百度商桥
  • 做问卷的网站删除域名 wordpress
  • 网站如何管理网站上不去的原因
  • 石家庄的网站开发公司外贸通道支持asp的网站吗
  • 标准网站是哪个开一个网站建设公司好
  • 鄱阳有做百度网站的网站批量修改
  • 校园网子网站建设管理意见或策划搜阅网站建设
  • 天水建设网站常州的网站建设
  • 新乡做网站的公司有那些sae wordpress 更新
  • 个人网站开发赚钱方向威海网站建设怎么样
  • 质量好网站建设加工网站开发 居易国际
  • wordpress超链接代码怎样建设网站优化
  • 网站降权是什么意思网站设计资料
  • 安全电子商务网站设计仿网站建设教程视频教程
  • 批量网站建设合作协议英德市住房城乡建设局网站
  • 广州的企业网站建设论文查重网站建设