/*
带权并查集
带权值的并查集只不过是在并查集中加入了一个value[]数组
value[]可以记录很多东西,也可是类似距离这种东西,也可以是相对于根节点的状态
加入了权值,相对于并查集函数有些改变
*/

1 int findfat(int x){
2     if(fat[x]==x) return x;
3     int temp=fat[x];
4     fat[x]=findfat(fat[x]);
5     //在此处修改val比如
6     value[x]=value [temp]+1;
7     return fat[x];
8 }

 1 /*
 2 #include <iostream>
 3 #include <stdio.h>
 4 using namespace std;
 5 int main(){
 6     int n,m;
 7     scanf("%d %d",&n ,&m);
 8     char a;
 9     for(int i=0;i<n;i++)
10         for(int k=0;k<m;k++)
11         scanf("%c",&a);
12     printf("%c",a);
13     return 0;
14 }
15 */

 1 #include <bits/stdc++.h>
 2 using namespace std;
 3 const manx=1e7+10;
 4 int pre[maxn];
 5 int Find( int x){     //递归的路径压缩
 6     return pre[x]==x?x:pre[x]=Find(pre[x]);
 7 }
 8
 9 int Find(int x){
10     if(pre[x]!=x)  pre[x]=Find(pre[x]);
11     return pre[x];
12 }
13
14 int Find(int x){
15     int p,tmp;
16     p=x;
17     while(x!=pre[x])
18         x=pre[x];
19     while(p!=x){
20         tmp=pre[p];
21         pre[p]=x;
22         p=tmp;
23     } return x;
24 }
25
26 void Union(int x,int y){
27     int p=Find(x),q=Find(y);
28     if(p!=q) pre[p]=q;
29 }
30
31 int check(int x,int y){
32     int p=Find(x),q=Find(y);
33     if(x==y) return 1;
34     else return 0;
35 }
36
37 int main(){
38     for(int i=0;i<maxn;i++)
39         pre[i]=i;     //初值就是本身
40
41     return 0;
42 }

转载于:https://www.cnblogs.com/z-712/p/7306273.html

basic code相关推荐

  1. HTTP Basic 验证客户端 C#实现笔记

    HTTP Basic 验证客户端的原理: 把HTTP头重的ContentType设置为:application/x-www-form-urlencoded 如果HTTP头没有Authorization ...

  2. vs code快捷键修改为idea快捷键

    安装插件:IntelliJ IDEA Keybindings 或者设置–>keymaps选择IntelliJ IDEA Keybindings 安装插件后的快捷键映射: Linux, Windo ...

  3. php 命令执行crud_如何使用原始JavaScript执行CRUD操作

    php 命令执行crud by Zafar Saleem 通过Zafar Saleem 如何使用原始JavaScript执行CRUD操作 (How to perform CRUD operations ...

  4. ios pusher使用_如何使用JavaScript和Pusher构建实时评论功能

    ios pusher使用 by Rahat Khanna 通过拉哈特·汉娜 如何使用JavaScript和Pusher构建实时评论功能 (How to build a Live Comment fea ...

  5. IntelliJ IDEA2016.2 Eclipse(mac os x)常用推荐捷键手册

    2019独角兽企业重金招聘Python工程师标准>>> Search Function Shortcut Use this shortcut to... Find ⌘F Initia ...

  6. VB6+Winsock编写的websocket服务端

    2017/07/08 - 最新的封装模块在:http://www.cnblogs.com/xiii/p/7135233.html,这篇可以忽略了 早就写好了,看这方面资料比较少,索性贴出来.只是一个D ...

  7. TensorFlow – A Collection of Resources

    from: http://tm.durusau.net/?p=65606 Another Word For It Patrick Durusau on Topic Maps and Semantic ...

  8. GridView导出Excel研究

    Introduction: 将GridView中的数据导出为Excel是web应用中的常见功能.在不同的应用场景下有不同的导出技术.在本文中我将介绍一些导出的技术,希望对您有所帮助 GridView ...

  9. IDEA 快捷键 Android Studio快捷键

    IDEA 快捷键 这是从IDEA官网下载的IDEA keymap Windows/Linux,中文我会慢慢补充上去. 因为AS是基于IDEA社区版开发的,所以快捷键都AS同样适用. IntelliJ ...

最新文章

  1. 三层交换机原理:02怎么用三层交换机?
  2. python自动化框架pytest接口关联串联_基于python接口自动化框架搭建_pytest+jenkins+allure...
  3. Reverse String
  4. python空格_python 空格
  5. 浅谈缓存最终一致性的解决方案
  6. Pandas高级教程之:处理缺失数据
  7. Cassandra,MongoDB,CouchDB,Redis,Riak,HBase比较
  8. 地牢房间迷宫走廊生成(二),Python实现洪水法、完美迷宫
  9. android 内容显示栏,android – 在工具栏下显示内容
  10. 洛谷 P4300 BZOJ 1266 [AHOI2006]上学路线route
  11. python 检测列表中是否有空值,检查python列表中是否已经存在数字
  12. c语言整形符号位_c语言无符号整型表示
  13. java excel 批注_Java 添加、读取和删除 Excel 批注
  14. 简单实用算法——人民币金额大写转换
  15. 65个最常见的面试问题与技巧性答复(面试技巧和注意事项),很不错,求职之前,多看看
  16. 高德地图Key的获取过程(详细)
  17. matplotlib subplot函数介绍
  18. centos7安装XtraBackup 2.4.4
  19. Linux命令行二:远程复制命令 scp
  20. CSDN日报20170322——《关于软件研发的一些体会总结》

热门文章

  1. 深度学习《CycleGAN》
  2. 漫步微积分二十七——曲线下的面积 定积分 黎曼
  3. 解决PyInstaller打包程序exe在win7运行异常问题(OSError: [WinError 87] 参数错误、Error loading Python DLL python39.dll等)
  4. leetcode —— 41. 缺失的第一个正数
  5. python中Numpy中的替代值
  6. Levmar使用小结
  7. python多线程文件的数据续传_python实现支持并发、断点续传的Ftp程序
  8. 网页制作表单代码java_网页制作的40个经典代码
  9. 对于计算机维护的,关于计算机的硬件维护
  10. html显示mysql图片路径_MySQL MySQL 直接存储图片并在 html 页面中展示,点击下载 _好机友...