您现在的位置是:主页 > news > 做自媒体要知道的网站/百度地图广告投放

做自媒体要知道的网站/百度地图广告投放

admin2025/6/14 18:30:42news

简介做自媒体要知道的网站,百度地图广告投放,免费全自动网页制作系统,比较好的高端网站制作公司题目大意:有n个节点,初始时每个节点的父亲节点都不存在。有两种操作 I u v:把点节点u的父亲节点设为v,距离为|u-v|除以1000的余数。输入保证执行指令前u没有父亲节点。 E u:询问u到根节点的距离。 分析:并查集加路径压缩。 #inclu…

做自媒体要知道的网站,百度地图广告投放,免费全自动网页制作系统,比较好的高端网站制作公司题目大意:有n个节点,初始时每个节点的父亲节点都不存在。有两种操作 I u v:把点节点u的父亲节点设为v,距离为|u-v|除以1000的余数。输入保证执行指令前u没有父亲节点。 E u:询问u到根节点的距离。 分析:并查集加路径压缩。 #inclu…

题目大意:有n个节点,初始时每个节点的父亲节点都不存在。有两种操作

I u v:把点节点u的父亲节点设为v,距离为|u-v|除以1000的余数。输入保证执行指令前u没有父亲节点。

E u:询问u到根节点的距离。

分析:并查集加路径压缩。

 

#include<iostream>
#include<algorithm>
#include<cstring>
#include<cstdio>
using namespace std;const int maxn=20010;
int f[maxn],d[maxn];int findset(int x)
{if(f[x] !=x){int root=findset(f[x]);d[x]+=d[f[x]];return f[x]=root;}else return x;
}int main()
{int T,i,n,u,v;char c[5];scanf("%d",&T);while(T--){scanf("%d",&n);for(i=1;i<=n;i++){ f[i]=i;d[i]=0;}while(scanf("%s",c) && c[0]!='O'){  if(c[0] == 'E'){scanf("%d",&u);findset(u);printf("%d\n",d[u]);}if(c[0] == 'I'){scanf("%d %d",&u,&v);f[u]=v;d[u]=abs(u-v)%1000;}}}return 0;
}

 

 

 

转载于:https://www.cnblogs.com/xiong-/p/3565372.html