https://vjudge.net/problem/UVALive-3027

题意:

有n个结点,初始时每个结点的父节点都不存在。你的任务是执行一次I操作和E操作,格式如下:

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

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

思路:

主要思想是并查集,记录一下每个结点到根结点的距离即可。

 #include<iostream>
#include<cstring>
using namespace std; const int maxn = + ; int p[maxn], d[maxn];
int n;
char c; int find(int x)
{
if (p[x] != x)
return d[x] + find(p[x]);
else
return d[x];
} int main()
{
//freopen("D:\\txt.txt", "r", stdin);
int T;
scanf("%d", &T);
while (T--)
{
memset(d, , sizeof(d));
scanf("%d", &n);
for (int i = ; i <= n; i++)
p[i] = i;
int u, v;
while (scanf("%c",&c) && c != 'O')
{
if (c == 'E')
{
scanf("%d", &u);
int sum=find(u);
cout << sum << endl;
}
else if (c == 'I')
{
scanf("%d%d", &u, &v);
p[u] = v;
d[u] = abs(v - u) % ;
}
}
}
}

最新文章

  1. DATE 日期格式
  2. 我的ORM之五-- 事务
  3. HDU5792 World is Exploding(树状数组)
  4. 能套用的tab栏切换
  5. 配置NAT回流导致外网解析到了内网IP
  6. Fresco 使用笔记(一):加载gif图片并播放
  7. 5月4日课堂内容:for循环的穷举、迭代
  8. Android App集成支付宝
  9. 转载sql server 关于 default value的一些使用总结
  10. windows平台下载android源代码
  11. 免费的Lucene 原理与代码分析完整版下载
  12. 记一个http-proxy-middleware 代理访问nginx映射的接口不通过的问题(connection close)
  13. c# 简单实现 插件模型 反射方式
  14. P1282 多米诺骨牌 (背包变形问题)
  15. PL/SQL学习笔记之包
  16. css3的calc()
  17. 核心一:IoC
  18. 友盟推送SDK集成测试、常见问题以及注意事项总结
  19. hacknet
  20. L3-014 周游世界 (30 分)

热门文章

  1. C#基础笔记(第十天)
  2. python的时间差计算
  3. zkSNARK 零知识验证
  4. [LeetCode] 72. Edit Distance_hard tag: Dynamic Programming
  5. 20165324 《网络对抗技术》week1 Kali的安装与配置
  6. Vagrant配置虚拟机
  7. python ddt 实现数据驱动一
  8. jenkins maven testng selenium自动化持续集成
  9. CentOS系统下的数据盘挂载
  10. vue项目打包后css背景图路径不对的问题