Aizu 2170 Marked Ancestor
题意:出一颗树,有两种操作:
1. mark u 标记结点u
2.query u 询问离u最近的且被标记的祖先结点是哪个
让你输出所有询问的和。
思路:数据量太小,直接暴力dfs就可以了
![](/assets/blank.gif)
![](/assets/blank.gif)
#include<iostream> #include<cstdio> #include<cstdlib> #include<cstring> #include<cmath> #include<vector> #include<set> #include<queue> #include<string> #include<algorithm> #define MAXSIZE 100005 #define LL long long using namespace std;int vis[MAXSIZE],pre[MAXSIZE];LL dfs(int p) {if(vis[p])return p;return dfs(pre[p]); }int main() {int n,m,num;LL sum;char op[5];while(scanf("%d%d",&n,&m),n+m){sum = 0;memset(vis,0,sizeof(vis));vis[1] = 1;for(int i=2;i<=n;i++){scanf("%d",&num);pre[i] = num;}while(m--){scanf("%s%d",op,&num);if(op[0] == 'Q'){sum += dfs(num);}else{vis[num] = 1;}}printf("%lld\n",sum);}return 0; }
View Code
转载于:https://www.cnblogs.com/alan-W/p/7288460.html
Aizu 2170 Marked Ancestor相关推荐
- 《挑战程序设计竞赛(第2版)》习题册攻略
本项目来源于GitHub 链接: 项目GitHub链接 1 前言 项目为<挑战程序设计竞赛(第2版)>习题册攻略,已完结.可配合书籍或笔记,系统学习算法. 题量:约200道,代码注释内含详 ...
- ICPC程序设计题解书籍系列之三:秋田拓哉:《挑战程序设计竞赛》(第2版)
白书<挑战程序设计竞赛>(第2版)题目一览 白书:秋田拓哉:<挑战程序设计竞赛>(第2版) 第1章 蓄势待发--准备篇(例题) POJ1852 UVa10714 ZOJ2376 ...
- 1143 Lowest Common Ancestor(建树与不建两种思路)
目录 解法一 解法二 解法一 这题可以不建树,直接利用BST的性质:左子树<根节点<右子树,对先序序列进行遍历,如果有某个元素大于等于u,v中较小的且小于等于u,v中较大的,则可能是根节点 ...
- BFS:图的最短路径 Aizu - 0558 Cheese
Cheese Aizu - 0558 大意:在H * W的地图上有N个奶酪工厂,每个工厂分别生产硬度为1-N的奶酪.有一只老鼠准备从出发点吃遍每一个工厂的奶酪.老鼠有一个体力值,初始时为1,每吃一个工 ...
- Aizu - 0033 Ball
这题书上写让用DFS--可是这一比较就出来啊-- Ball Aizu - 0033 図のように二股に分かれている容器があります.1 から 10 までの番号が付けられた10 個の玉を容器の開口部 A か ...
- Confluence 6 重构 ancestor 表
ancestor 表记录了上级和下级(子页面)页面之间的关系.这个表格同时被用来确定子页面是否具有从上级页面继承来的限制(restrictions)权限. 偶尔 ancestor 表格中的数据可能被损 ...
- Transaction rolled back because it has been marked as rollback-only分析解决方法
Transaction rolled back because it has been marked as rollback-only分析解决方法 参考文章: (1)Transaction rolle ...
- Lowest Common Ancestor of a Binary Search Tree(树中两个结点的最低公共祖先)
题目描述: Given a binary search tree (BST), find the lowest common ancestor (LCA) of two given nodes in ...
- [MySQL]快速解决is marked as crashed and should be repaired故障
登录mysql执行 repair table table_name 完毕 下面的方法试了不管用 -------------------------------------- 具体报错如下: Table ...
最新文章
- python codecs模块
- hive查询where join_Hive系列(4):常用函数where,join
- 鼠标位置精确定位总结
- 【MD5】加密/解密大小写问题
- leetcode 330. Patching Array | 1798. Maximum Number of Consecutive Values You Can Make
- printf函数源码linux,再来一版简易的printf函数实现
- pthread 的坑
- relative与absolute相结合
- C++之指针探究(十六):typedef结合函数指针
- Java MyBatis 别名
- python发邮件实例_python发邮件实例
- 1019. General Palindromic Number (20)
- 大数据Hadoop相关概念及其技术生态圈
- 传奇物品在地上显示,红字,自动拾取文件
- Illustrator CC从入门到精通 精装版-李发展-专题视频课程
- 工作笔记-Hazelcast安装和基本配置
- h5阿里云播放器 常规使用
- 10.[保护模式]长调用与短调用
- DVD碟片w ndows7,Windows7-USB-DVD-Tool下载地址及使用方法解决
- MySQL 高可用之MMM
热门文章
- 6年Java程序员年薪60W,这些年我都爬过哪些坑(2021年终总结)
- 【枭·音频】注入灵魂—《暗影火炬城》角色语音后期处理
- 从无主之地看FPS+ARPG游戏的发展方向
- 《暗黑地牢》—“克苏鲁”式的绝望冒险
- 模型解析之独立顶点的筛选
- pmp每日三题(2022年2月25日)
- 解决ORA-15097 Cannot shutdown ASM if OCR is Located in ASM
- MySQL查询报错ERROR:No query specified
- Nagios 请检查HTTP服务器关于该CGI的访问权限设置
- ORACLE 动态SQL中的多个单引号