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

WordPress好像微博一样插件伊宁网站建设优化

WordPress好像微博一样插件,伊宁网站建设优化,软件开发过程的阶段划分,seol英文啥意思紧急救援 作为一个城市的应急救援队伍的负责人#xff0c;你有一张特殊的全国地图。在地图上显示有多个分散的城市和一些连接城市的快速道路。每个城市的救援队数量和每一条连接两个城市的快速道路长度都标在地图上。当其他城市有紧急求助电话给你的时候#xff0c;你的任务… 紧急救援 作为一个城市的应急救援队伍的负责人你有一张特殊的全国地图。在地图上显示有多个分散的城市和一些连接城市的快速道路。每个城市的救援队数量和每一条连接两个城市的快速道路长度都标在地图上。当其他城市有紧急求助电话给你的时候你的任务是带领你的救援队尽快赶往事发地同时一路上召集尽可能多的救援队。 输入格式: 输入第一行给出4个正整数N、M、S、D其中N2≤N≤500是城市的个数顺便假设城市的编号为0 ~ (N−1)M是快速道路的条数S是出发地的城市编号D是目的地的城市编号。 第二行给出N个正整数其中第i个数是第i个城市的救援队的数目数字间以空格分隔。随后的M行中每行给出一条快速道路的信息分别是城市1、城市2、快速道路的长度中间用空格分开数字均为整数且不超过500。输入保证救援可行且最优解唯一。 输出格式: 第一行输出最短路径的条数和能够召集的最多的救援队数量。第二行输出从S到D的路径中经过的城市编号。数字间以空格分隔输出结尾不能有多余空格。 输入样例: 4 5 0 3 20 30 40 10 0 1 1 1 3 2 0 3 3 0 2 2 2 3 2输出样例: 2 60 0 1 3 求路径一维数组记录即可 dfs 正着读出来 1、int father[N]; 2、father[x]t father[s]-1; 3、读 void print(int x) {if(father[s]-1){couts;return ;}print(father[x]);cout x; } #includeiostream #includealgorithm #includecstring using namespace std; const int N550; int g[N][N]; int city_num[N]; int city_sum[N]; int path_num[N]; int father[N]; int dist[N]; bool st[N]; int n,m,s,d; void dijkstra() {memset(dist,0x3f,sizeof dist);dist[s]0;father[s]-1;city_sum[s]city_num[s];for(int i0;in;i){int t-1;for(int j0;jn;j){if(!st[j](dist[j]dist[t]||t-1)) tj;}st[t]1;for(int j0;jn;j){if(!st[j]dist[j]dist[t]g[t][j]){dist[j]dist[t]g[t][j];city_sum[j]city_sum[t]city_num[j];father[j]t;path_num[j]path_num[t];}else if(!st[j]dist[j]dist[t]g[t][j]){path_num[j]path_num[t];if(city_sum[j]city_sum[t]city_num[j]){city_sum[j]city_sum[t]city_num[j];father[j]t;}}}} } void print(int x) {if(father[x]-1)//if(xs){couts;return ;}print(father[x]);cout x; } int main() {cinnmsd;for(int i0;in;i){cincity_num[i];path_num[i]1;}memset(g,0x3f,sizeof g);for(int i0;in;i) g[i][i]0;while(m--){int a,b,c;cinabc;g[a][b]g[b][a]min(g[a][b],c);}dijkstra();coutpath_num[d] city_sum[d]endl;print(d);return 0; } 迷宫问题 给定一个 n×n的二维数组如下所示 int maze[5][5] {0, 1, 0, 0, 0,0, 1, 0, 1, 0,0, 0, 0, 0, 0,0, 1, 1, 1, 0,0, 0, 0, 1, 0,};它表示一个迷宫其中的1表示墙壁0表示可以走的路只能横着走或竖着走不能斜着走要求编程序找出从左上角到右下角的最短路线。 数据保证至少存在一条从左上角走到右下角的路径。 输入格式 第一行包含整数 n。 接下来 n 行每行包含 n 个整数 0 或 1表示迷宫。 输出格式 输出从左上角到右下角的最短路线如果答案不唯一输出任意一条路径均可。 按顺序每行输出一个路径中经过的单元格的坐标左上角坐标为 (0,0)(0,0)右下角坐标为 (n−1,n−1)。 数据范围 0≤n≤1000 输入样例 5 0 1 0 0 0 0 1 0 1 0 0 0 0 0 0 0 1 1 1 0 0 0 0 1 0输出样例 0 0 1 0 2 0 2 1 2 2 2 3 2 4 3 4 4 4 求路劲坐标用pair存储 二维数组表示出来x,y的下一个点 1、定义 typedef pairint,intPII; PII pre[N][N]; 2、表示 {pre[0][0]{-1,-1}//起点的前驱PII tq.front();pre[x][y]t; } 3、输出 可以用dfs/或者在存的时候直接倒着存 void print(int x,int y) {if(pre[x][y]PII{-1,-1}){cout0 0endl;}print(pre[x][y].frist,pre[x][y].second);coutx yendl; }#includeiostream #includequeue #includealgorithm #define x first #define y second using namespace std; typedef pairint,intPII; const int N1010; int g[N][N]; bool st[N][N];//标记数组 表示当前位置是否走过 PII pre[N][N];//存储当前位置的前驱 int dx[4]{0,0,-1,1},dy[4]{1,-1,0,0}; int n; void bfs() {queuePIIq;//为了正着写位置方便 倒这遍历到00 在从00输出pre数组q.push({n-1,n-1});st[n-1][n-1]true;while(q.size()){PII tq.front();q.pop();for(int i0;i4;i){int x1t.xdx[i],y1t.ydy[i];if(x10||x1n||y10||y1n) continue;//越界if(st[x1][y1]) continue;//已走过if(g[x1][y1]) continue;//是墙 无法走q.push({x1,y1});st[x1][y1]true;pre[x1][y1]t;//标记当前位置的前驱}} } int main() {scanf(%d,n);for(int i0;in;i)for(int j0;jn;j)scanf(%d,g[i][j]);bfs(); //PII end{0,0};PII end(0,0);while(1){printf(%d %d\n,end.x,end.y);if(end.xn-1end.yn-1) break;endpre[end.x][end.y];}return 0; } 魔板 Rubik 先生在发明了风靡全球的魔方之后又发明了它的二维版本——魔板。 这是一张有 88 个大小相同的格子的魔板 1 2 3 4 8 7 6 5我们知道魔板的每一个方格都有一种颜色。 这 88 种颜色用前 88 个正整数来表示。 可以用颜色的序列来表示一种魔板状态规定从魔板的左上角开始沿顺时针方向依次取出整数构成一个颜色序列。 对于上图的魔板状态我们用序列 (1,2,3,4,5,6,7,8)(1,2,3,4,5,6,7,8) 来表示这是基本状态。 这里提供三种基本操作分别用大写字母 ABC 来表示可以通过这些操作改变魔板的状态 A交换上下两行 B将最右边的一列插入到最左边 C魔板中央对的4个数作顺时针旋转。 下面是对基本状态进行操作的示范 A 8 7 6 5 1 2 3 4B 4 1 2 3 5 8 7 6C 1 7 2 4 8 6 3 5对于每种可能的状态这三种基本操作都可以使用。 你要编程计算用最少的基本操作完成基本状态到特殊状态的转换输出基本操作序列。 注意数据保证一定有解。 输入格式 输入仅一行包括 88 个整数用空格分开表示目标状态。 输出格式 输出文件的第一行包括一个整数表示最短操作序列的长度。 如果操作序列的长度大于0则在第二行输出字典序最小的操作序列。 数据范围 输入数据中的所有数字均为 11 到 88 之间的整数。 输入样例 2 6 8 4 5 7 3 1输出样例 7 BCABCCB 求步骤一种状态到另一种状态中有步骤代替 #includeunordered_map 1、unordered_mapstring,pairchar,stringpre 2、 pre[x]{Ai,t}; 3、 while(1){if(end12345678) break;spre[end].first;endpre[end].second;}reverse(s.begin(),s.end()); #includeiostream #includequeue #includealgorithm #define x first #define y second using namespace std; typedef pairint,intPII; const int N1010; int g[N][N]; bool st[N][N];//标记数组 表示当前位置是否走过 PII pre[N][N];//存储当前位置的前驱 int dx[4]{0,0,-1,1},dy[4]{1,-1,0,0}; int n; void bfs() {queuePIIq;//为了正着写位置方便 倒这遍历到00 在从00输出pre数组q.push({n-1,n-1});st[n-1][n-1]true;while(q.size()){PII tq.front();q.pop();for(int i0;i4;i){int x1t.xdx[i],y1t.ydy[i];if(x10||x1n||y10||y1n) continue;//越界if(st[x1][y1]) continue;//已走过if(g[x1][y1]) continue;//是墙 无法走q.push({x1,y1});st[x1][y1]true;pre[x1][y1]t;//标记当前位置的前驱}} } int main() {scanf(%d,n);for(int i0;in;i)for(int j0;jn;j)scanf(%d,g[i][j]);bfs(); //PII end{0,0};PII end(0,0);while(1){printf(%d %d\n,end.x,end.y);if(end.xn-1end.yn-1) break;endpre[end.x][end.y];}return 0; }
http://www.zqtcl.cn/news/941893/

相关文章:

  • 江都建设网站网站开发技术介绍
  • 网站介绍视频怎么做网站建设优化服务
  • 可以左右滑动的网站有口碑的盐城网站建设
  • 360报危险网站注册界面设计
  • 不用淘宝客api如何做网站北京移动官网网站建设
  • 手表哪个网站做的好河北网站备案流程
  • 凡科做的网站推效果网站做seo第一步
  • 建设在线观看视频网站免费企业网站建设免费
  • 网站开发需要后台吗哪家建站公司好
  • 个人建设网站论文网站视频怎么做的
  • 不同类型的购物网站汉川网站建设
  • 网站开发需求文档范文广州公司网站托管
  • 网站制作公司官网首页撸撸撸做最好的导航网站
  • 网站建设毕业设计综述centos 安装wordpress lnmp
  • 济宁专业做网站网站建设中 html
  • 中国排名高的购物网站最新发布的手机2022
  • 备案的网站名与公司名称出国用哪个地图app好
  • 网站建设工作室图片文章资讯类网站
  • 深圳自助建站系统网站题目有哪些
  • 郑州做网站kuihuakeji软文发布的平台与板块
  • 一那个网站可以做一建题安全文化企业示范企业评价标准
  • 网站没有关键词收录phpstudy配置网站
  • 返利网站怎么做的做网站推广见客户的话术
  • 两个人看的视频在线观看成都网站seo厂家
  • 做汽车配件出口用什么网站好些微信朋友圈营销技巧
  • 怎样建设传奇网站空间什么做电子书下载网站
  • 自己怎么做dj 视频网站网站模板制作教程视频
  • 苏州瑞熙网站建设签名图片在线制作
  • 重庆建站模板大全给公司创建网站
  • king cms网站建设上海传媒公司有哪些