博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
hdu 3461 Code Lock 并查集(有点难想到)★★
阅读量:5218 次
发布时间:2019-06-14

本文共 1209 字,大约阅读时间需要 4 分钟。

1 #include
2 #include
3 int set[10000005]; 4 int count; 5 #define mod 1000000007 6 7 int find(int x) 8 { 9 int r=x;10 while(r!=set[r])11 r=set[r];12 int i=x;13 while(i!=r)14 {15 int j=set[i];16 set[i]=r;17 i=j;18 }19 return r;20 }21 22 void merge(int x,int y)23 {24 int fx=find(x);25 int fy=find(y);26 if(fx!=fy)27 {28 set[fx]=fy;29 count++;30 }31 }32 33 long long exp(int n){34 long long sum=1, tmp=26;35 while(n){36 if(n&1) //n%2==137 {38 sum = sum*tmp;39 sum %= mod;40 }41 tmp = (tmp*tmp)%mod;42 n>>=1; // n/=2;43 }44 return sum;45 }46 47 int main()48 {49 int n,m,l,r;50 while(scanf("%d%d",&n,&m)!=EOF)51 {52 count=0;53 for(int i=0;i<=n;i++)//i=0,错在i=154 set[i]=i;55 for(int i=1;i<=m;i++)56 {57 scanf("%d%d",&l,&r);58 merge(l-1,r);//若果是l-1,上边初始化就从0开始,如果用merge(l,r+1),初始化i是1到n+159 }60 printf("%lld\n",exp(n-count)%mod);61 }62 return 0;63 }

 

转载于:https://www.cnblogs.com/ouyang_wsgwz/p/7683860.html

你可能感兴趣的文章
HDOJ 4607 - Park Visit
查看>>
服务器相对路径Nginx入门之二
查看>>
缓存文件缓存依赖中cachedependency对象及周边小讲
查看>>
对象数组[置顶] java高级工程师-----JSON和XML的使用
查看>>
IOS 主要框架 介绍
查看>>
iOS根据16进制的色号来设置颜色,适合封装工具类
查看>>
ANTLR
查看>>
Linux HugePages及MySQL 大页配置
查看>>
如何在centos6中ssh免密码登录配置
查看>>
新 Azure SQL 数据库服务等级的性能
查看>>
Linux系统编程(14)——shell常用命令
查看>>
动态树入门
查看>>
关于python中的特殊方法
查看>>
vim配置
查看>>
JEECG框架中使用Flash版本Uploadify,在Chrome版本号70下无法启动的解决办法
查看>>
Mybatis Update statement Date null
查看>>
设计师工资低?10大网站助你快速涨1万身价
查看>>
Session、Cookie 学习笔记
查看>>
30 分钟快速入门 Docker 教程
查看>>
MySQL命令行下执行.sql脚本详解
查看>>