并查集---可能是我水过最多的算法。。。。
#include<iostream> using namespace std; #define N 50005 #define M 105 int colorClass[N]; int father[M]; int findFather(int i) { if(father[i]!=i) father[i]=findFather(father[i]); return father[i]; } void union_set(int a,int b) { int fa=findFather(a); int fb=findFather(b); fa<fb?father[fb]=fa:father[fa]=fb; } int main() { int n,m; scanf("%d%d",&n,&m); while(!(n==0&&m==0)) { for(int i=0;i<n;i++) scanf("%d",&colorClass[i]); for(int i=1;i<=m;i++) father[i]=i; int k; scanf("%d",&k); for(int i=0;i<k;i++) { int a,b; scanf("%d%d",&a,&b); union_set(a,b); } int cnt=1; findFather(colorClass[0]); for(int i=1;i<n;i++) { if(father[colorClass[i-1]]!=findFather(colorClass[i])) cnt++; } printf("%d\n",cnt); scanf("%d%d",&n,&m); } }
相关推荐
BOJ的题目1023. Ancient Keyboard解法 源代码
boj 上08 09 年复试模拟题的答案
boj:算法
JAVA_BOJ
Algorithm-BOJ.zip,BekJon在线法官(Java,Kotlin,SWIFT)和PS路线图,算法是为计算机程序高效、彻底地完成任务而创建的一组详细的准则。
BOJ
Algorithm-BOJ-PSJ.zip,Baykon在线判断JAVA问题解决方法(第二章),算法是为计算机程序高效、彻底地完成任务而创建的一组详细的准则。
Algorithm-BOJ-AutoCommit.zip,当您解决baekjoon online judge的问题时,它会自动提交并推送到远程存储库。,算法是为计算机程序高效、彻底地完成任务而创建的一组详细的准则。
Algorithm-boj-auto-submit.zip,日本央行cli提交脚本,算法是为计算机程序高效、彻底地完成任务而创建的一组详细的准则。
资源分类:Python库 所属语言:Python 资源全名:boj-0.0.1.tar.gz 资源来源:官方 安装方法:https://lanzao.blog.csdn.net/article/details/101784059
通过这本图画书展示您的创造力,其中包括Boj和朋友。 一本有趣的,全数字化且可重复使用的着色书,可用于 通过这本图画书展示您的创造力,其中包括Boj和朋友。 一本有趣的全数字可重复使用的图画书,专为孩子,父母...
解决问题 Boj.kr
欢迎来到PS_BOJ 이곳은... J이한BOJ문제들의AC코드들이입니다。 안내 :check_mark: C ++ Python으로풀이합니다。 :check_mark: ++ C ++풀이하며 long long 필요하거나으으으으으으으으으끔씩만끔씩만끔씩만끔씩만...
BOJ:日本央行