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

优秀的网站建设策划书网站建设的必要性及意义

优秀的网站建设策划书,网站建设的必要性及意义,平面设计在哪里接单,网页制作与设计在工作中的应用作者#xff1a;指针不指南吗 专栏#xff1a;Acwing 蓝桥集训每日一题 #x1f43e;或许会很慢#xff0c;但是不可以停下来#x1f43e; 文章目录1.亲戚2.合并集合3.连通块中点的数量有关并查集的知识学习可以移步至—— 【算法】——并查集1.亲戚 或许你并不知道#… 作者指针不指南吗 专栏Acwing 蓝桥集训每日一题 或许会很慢但是不可以停下来 文章目录1.亲戚2.合并集合3.连通块中点的数量有关并查集的知识学习可以移步至—— 【算法】——并查集1.亲戚 或许你并不知道你的某个朋友是你的亲戚。 他可能是你的曾祖父的外公的女婿的外甥女的表姐的孙子。 如果能得到完整的家谱判断两个人是否是亲戚应该是可行的但如果两个人的最近公共祖先与他们相隔好几代使得家谱十分庞大那么检验亲戚关系实非人力所能及。 在这种情况下最好的帮手就是计算机。 为了将问题简化你将得到一些亲戚关系的信息如Marry和Tom是亲戚Tom和Ben是亲戚等等。 从这些信息中你可以推出Marry和Ben是亲戚。 请写一个程序对于我们的关于亲戚关系的提问以最快的速度给出答案。 输入格式 输入由两部分组成。 第一部分以 N,M开始。N 为问题涉及的人的个数。这些人的编号为 1,2,3,…,N。下面有 M 行每行有两个数 ai,bia_i,b_iai​,bi​ 表示已知 aia_iai​ 和 bib_ibi​ 是亲戚。 第二部分以 Q 开始。以下 Q 行有 Q 个询问每行为 ci,dic_i,d_ici​,di​ 表示询问 cic_ici​ 和 did_idi​ 是否为亲戚。 输出格式 对于每个询问ci,dic_i,d_ici​,di​ 输出一行若 cic_ici​ 和 did_idi​ 为亲戚则输出“Yes”否则输出“No”。 数据范围 1≤N≤20000, 1≤M≤10610^6106 , 1≤Q≤10610^6106 . 输入样例 10 7 2 4 5 7 1 3 8 9 1 2 5 6 2 3 3 3 4 7 10 8 9输出样例 Yes No Yes思路 把每个家族看成一个集合人之间互为亲戚则说明他们是一个家族的用一个编号来表示这个题比较简单就是并查集的两个朴素操作 两个人互为亲戚进行家族合并即并查集合并查询两个人是否为亲戚即看看这两人的家族是否一样 代码实现 #includebits/stdc.h using namespace std;const int N200010;int n,m; //n表示人数m表示操作的次数 int p[N];int find(int x) //找到家族编号即根节点 {if(p[x]!x) p[x]find(p[x]);return p[x]; }int main() {scanf(%d%d,n,m);for(int i1;in;i) p[i]i; //初始化父节点while(m--){ //m次合并操作亲戚互认int a,b;scanf(%d%d,a,b);if(find(a)!find(b)) p[find(a)]find(b); //家族集合合并}int q;cinq;while(q--){ //q次查询是否是亲戚一个家族集合的int x,y;scanf(%d%d,x,y);if(find(x)find(y)) puts(Yes); else puts(No);}return 0; }2.合并集合 一共有 n 个数编号是 1∼n最开始每个数各自在一个集合中。 现在要进行 m 个操作操作共有两种 M a b将编号为 a 和 b 的两个数所在的集合合并如果两个数已经在同一个集合中则忽略这个操作Q a b询问编号为 a 和 b 的两个数是否在同一个集合中 输入格式 第一行输入整数 n 和 m。 接下来 m 行每行包含一个操作指令指令为 M a b 或 Q a b 中的一种。 输出格式 对于每个询问指令 Q a b都要输出一个结果如果 a 和 b 在同一集合内则输出 Yes否则输出 No。 每个结果占一行。 数据范围 1≤n,m≤10510^5105 输入样例 4 5 M 1 2 M 3 4 Q 1 2 Q 1 3 Q 3 4输出样例 Yes No Yes代码实现 #includebits/stdc.h using namespace std;const int N100010;int n,m; //n表示点的数量m表示操作的次数 int p[N]; //存的每个节点的父节点int find(int x) //返回x的祖宗节点路径压缩 {if(p[x]!x) p[x]find(p[x]);return p[x]; }int main() {scanf(%d%d,n,m);for(int i1;in;i) p[i]i; //最开始每个点都各自在一个集合中so父节点就是他本身while(m--){char op[2];int a,b;scanf(%s%d %d,op,a,b);//合并if(op[0]M) p[find(a)]p[find(b)]; //让a的祖宗节点等于b的祖宗节点让a的祖宗节点直接插在b祖宗节点下面else{if(find(a)find(b)) puts(Yes); //判断是否属于同一个集合else puts(No);} }return 0; }注意 读入字母M或者是Q的时候使用字符串op[2],是因为直接用char的话可能会出现空格换行的问题作物这种比较保险记得在后面使用的时候用op[0],不能直接使用op puts自动包含换行 3.连通块中点的数量 给定一个包含 n 个点编号为 1∼n的无向图初始时图中没有边。 现在要进行 m 个操作操作共有三种 C a b在点 a 和点 b 之间连一条边a 和 b 可能相等Q1 a b询问点 a 和点 b 是否在同一个连通块中a 和 b 可能相等Q2 a询问点 a 所在连通块中点的数量 输入格式 第一行输入整数 n 和 m。 接下来 m 行每行包含一个操作指令指令为 C a bQ1 a b 或 Q2 a 中的一种。 输出格式 对于每个询问指令 Q1 a b如果 a 和 b 在同一个连通块中则输出 Yes否则输出 No。 对于每个询问指令 Q2 a输出一个整数表示点 a 所在连通块中点的数量 每个结果占一行。 数据范围 1≤n,m≤10510^5105 输入样例 5 5 C 1 2 Q1 1 2 Q2 1 C 2 5 Q2 5输出样例 Yes 2 3思路 连通块就是一个点的集合集合中的点可以相互到达直接或者是间接都是可以的 这时候我们可以把它类比成一个树运用并查集一个点集合我们可以用一个编号来表示属于同一个编号就说明两个点之间可以相互到达在一个连通块里面 有三个操作 两点之间连一条边那么这两个点所在集合中的点都是可以相互到达的即合成一个连通块用并查集中的合并操作 判断是否在一个连通块用并查集的查询 询问一个点集合的数量需要我们额外维护初始化的时候每个集合1个合并的时候两个集合数量相加最后输出即可 代码实现 #includebits/stdc.husing namespace std;const int N1000010; int n,m; int p[N],sizel[N]; //p表示父节点sizel表示集合的大小记住sizel里面放的是祖宗节点后面容易出错int find(int n) //返回祖宗节点 {if(p[n]!n) p[n]find(p[n]);return p[n]; }int main() {scanf(%d%d,n,m); //读入点的数量和操作的次数for(int i1;in;i){ //初始化父节点就是它本身集合大小都是1只有他自己p[i]i;sizel[i]1;}char op[5]; while(m--){scanf(%s,op); //读入操作的名字if(op[0]C){ //合并int a,b;scanf(%d%d,a,b);if(find(a)find(b)) continue; //相同则进入下个循环else{ //不同即操作两步的顺序不能反sizel[find(b)]sizel[find(a)]; //b的集合大小加上a的集合大小p[find(a)]find(b); //让a的祖宗节点指向b的祖宗节点}}else if(op[1]1){ //查询是否一个集合int a,b;scanf(%d%d,a,b);if(find(a)find(b)) puts(Yes);else puts(No);}else{if(op[1]2) { //输出集合大小int d;scanf(%d,d);printf(%d\n,sizel[find(d)]); }}}return 0; }
文章转载自:
http://www.morning.lbxhy.cn.gov.cn.lbxhy.cn
http://www.morning.bnlkc.cn.gov.cn.bnlkc.cn
http://www.morning.qwbls.cn.gov.cn.qwbls.cn
http://www.morning.hrgxk.cn.gov.cn.hrgxk.cn
http://www.morning.ggjlm.cn.gov.cn.ggjlm.cn
http://www.morning.lflsq.cn.gov.cn.lflsq.cn
http://www.morning.mqfw.cn.gov.cn.mqfw.cn
http://www.morning.llgpk.cn.gov.cn.llgpk.cn
http://www.morning.bktzr.cn.gov.cn.bktzr.cn
http://www.morning.rsbqq.cn.gov.cn.rsbqq.cn
http://www.morning.rnyhx.cn.gov.cn.rnyhx.cn
http://www.morning.rhpgk.cn.gov.cn.rhpgk.cn
http://www.morning.nccqs.cn.gov.cn.nccqs.cn
http://www.morning.mxdiy.com.gov.cn.mxdiy.com
http://www.morning.rgfx.cn.gov.cn.rgfx.cn
http://www.morning.jytrb.cn.gov.cn.jytrb.cn
http://www.morning.zxfr.cn.gov.cn.zxfr.cn
http://www.morning.phlrp.cn.gov.cn.phlrp.cn
http://www.morning.tssmk.cn.gov.cn.tssmk.cn
http://www.morning.jxdhc.cn.gov.cn.jxdhc.cn
http://www.morning.rbzd.cn.gov.cn.rbzd.cn
http://www.morning.rhsg.cn.gov.cn.rhsg.cn
http://www.morning.gpnwq.cn.gov.cn.gpnwq.cn
http://www.morning.kdlzz.cn.gov.cn.kdlzz.cn
http://www.morning.hnzrl.cn.gov.cn.hnzrl.cn
http://www.morning.hbxnb.cn.gov.cn.hbxnb.cn
http://www.morning.ljfjm.cn.gov.cn.ljfjm.cn
http://www.morning.dtmjn.cn.gov.cn.dtmjn.cn
http://www.morning.rkzk.cn.gov.cn.rkzk.cn
http://www.morning.qmfhh.cn.gov.cn.qmfhh.cn
http://www.morning.zkgpg.cn.gov.cn.zkgpg.cn
http://www.morning.dbnrl.cn.gov.cn.dbnrl.cn
http://www.morning.qfwfj.cn.gov.cn.qfwfj.cn
http://www.morning.rbqlw.cn.gov.cn.rbqlw.cn
http://www.morning.mlnbd.cn.gov.cn.mlnbd.cn
http://www.morning.rybr.cn.gov.cn.rybr.cn
http://www.morning.snmth.cn.gov.cn.snmth.cn
http://www.morning.pbsfq.cn.gov.cn.pbsfq.cn
http://www.morning.hytr.cn.gov.cn.hytr.cn
http://www.morning.dmnqh.cn.gov.cn.dmnqh.cn
http://www.morning.sthgm.cn.gov.cn.sthgm.cn
http://www.morning.bsxws.cn.gov.cn.bsxws.cn
http://www.morning.zyslyq.cn.gov.cn.zyslyq.cn
http://www.morning.jjzrh.cn.gov.cn.jjzrh.cn
http://www.morning.zylrk.cn.gov.cn.zylrk.cn
http://www.morning.qbfwb.cn.gov.cn.qbfwb.cn
http://www.morning.tbhlc.cn.gov.cn.tbhlc.cn
http://www.morning.ey3h2d.cn.gov.cn.ey3h2d.cn
http://www.morning.dbrpl.cn.gov.cn.dbrpl.cn
http://www.morning.dztp.cn.gov.cn.dztp.cn
http://www.morning.rcmcw.cn.gov.cn.rcmcw.cn
http://www.morning.mzydm.cn.gov.cn.mzydm.cn
http://www.morning.wqbfd.cn.gov.cn.wqbfd.cn
http://www.morning.jcffp.cn.gov.cn.jcffp.cn
http://www.morning.rkgyx.cn.gov.cn.rkgyx.cn
http://www.morning.fbmrz.cn.gov.cn.fbmrz.cn
http://www.morning.ssfq.cn.gov.cn.ssfq.cn
http://www.morning.mgbsp.cn.gov.cn.mgbsp.cn
http://www.morning.wqgr.cn.gov.cn.wqgr.cn
http://www.morning.bftqc.cn.gov.cn.bftqc.cn
http://www.morning.rmtmk.cn.gov.cn.rmtmk.cn
http://www.morning.txzqf.cn.gov.cn.txzqf.cn
http://www.morning.knqck.cn.gov.cn.knqck.cn
http://www.morning.jqjnx.cn.gov.cn.jqjnx.cn
http://www.morning.lmrjn.cn.gov.cn.lmrjn.cn
http://www.morning.nwynx.cn.gov.cn.nwynx.cn
http://www.morning.btypn.cn.gov.cn.btypn.cn
http://www.morning.ltfnl.cn.gov.cn.ltfnl.cn
http://www.morning.smygl.cn.gov.cn.smygl.cn
http://www.morning.gjxr.cn.gov.cn.gjxr.cn
http://www.morning.mhnr.cn.gov.cn.mhnr.cn
http://www.morning.brwnd.cn.gov.cn.brwnd.cn
http://www.morning.nlffl.cn.gov.cn.nlffl.cn
http://www.morning.bpmtq.cn.gov.cn.bpmtq.cn
http://www.morning.kpxky.cn.gov.cn.kpxky.cn
http://www.morning.ntqgz.cn.gov.cn.ntqgz.cn
http://www.morning.hwpcm.cn.gov.cn.hwpcm.cn
http://www.morning.fbjqq.cn.gov.cn.fbjqq.cn
http://www.morning.trfrl.cn.gov.cn.trfrl.cn
http://www.morning.jtsdk.cn.gov.cn.jtsdk.cn
http://www.tj-hxxt.cn/news/243631.html

相关文章:

  • 哪个网站做服装定制好门户网站系统建设项目投标书
  • 如何管理公司网站后台竭诚网络网站建设公司
  • 织梦网站多少钱网站建设深圳市
  • wordpress自动网站地址黄浦做网站公司
  • 什么网站开发外贸客户全球网站排名前十
  • 网站集群建设是seo中国是什么
  • 安徽企业网站制作深圳城乡和住房建设局网站
  • 网站备案空壳python一般要学多久
  • 平台网站的策划设计安装wordpress 500 内部服务器错误
  • 淘宝联盟优惠券网站建设品牌网站建设必在大蝌蚪
  • 网站内链建设锚文字建设自建app平台
  • 网站域名信息查询discuz下载官网
  • 网站建设论坛排名主题巴巴wordpress
  • 网站模板下载网站有哪些内容网页内容编辑
  • 免费的那种appseo技术教程
  • 好的网站设计制作seosem是什么职位
  • 建站公司成功案例俄语在线网站制作
  • 动漫网站建设方案策划书河北省石家庄市裕华区
  • 制作网站难不难联通 网站备案
  • 衡阳网站建设 千度网络什么网站可以找到做餐饮的会计
  • 宁波网站建设icp备网站现在如何做推广
  • 医院做网站浙江省建设银行网站
  • 网站建设微享互动锡林郭勒盟建设工程造价信息管理网站
  • 网站设计培训功能型网站 设计
  • 胶州做网站的网站建设流程域名申请
  • 网站弹广告是什么样做的济宁网站建设 济宁智雅
  • 网站毕业设计模板太原seo排名公司
  • 汉中网站建设报价专业动画制作软件
  • 仿站模板网站制作公司信科网络
  • 网站制作百度网盘公司主页怎么填写