牛客练习赛39 B 选点(dfs序+LIS)
题意:
#include<iostream> #include<cstdio> #include<algorithm> #include<cmath> #include<cstring> #include<string> #include<stack> #include<queue> #include<deque> #include<set> #include<vector> #include<map> #include<functional>#define fst first #define sc second #define pb push_back #define mem(a,b) memset(a,b,sizeof(a)) #define lson l,mid,root<<1 #define rson mid+1,r,root<<1|1 #define lc root<<1 #define rc root<<1|1 #define lowbit(x) ((x)&(-x)) using namespace std;typedef double db; typedef long double ldb; typedef long long ll; typedef unsigned long long ull; typedef pair<int,int> PI; typedef pair<ll,ll> PLL;const db eps = 1e-6; const int mod = 1e9+7; const int maxn = 2e6+100; const int maxm = 2e6+100; const int inf = 0x3f3f3f3f; const db pi = acos(-1.0); int a[maxn]; vector<int>v; int l[maxn],r[maxn]; void dfs(int x){v.pb(a[x]);if(r[x])dfs(r[x]);if(l[x])dfs(l[x]);return; } int low[maxn],f[maxn]; int main() {int n;v.pb(0);scanf("%d", &n);for(int i = 1; i <= n; i++){scanf("%d", &a[i]);}for(int i = 1; i <= n; i++){scanf("%d %d", &l[i], &r[i]);}dfs(1);int cnt = 0;mem(low,-1);for(int i = 1; i <= n; i++){int t;t = lower_bound(low+1,low+1+cnt,a[i])-low;f[i]=t;cnt=max(cnt,t);low[t]=a[i];}return 0; }
转载于:https://www.cnblogs.com/wrjlinkkkkkk/p/10357957.html
牛客练习赛39 B 选点(dfs序+LIS)相关推荐
- 牛客练习赛39 B.选点
链接:https://ac.nowcoder.com/acm/contest/368/B 来源:牛客网 题目描述 有一棵n个节点的二叉树,1为根节点,每个节点有一个值wi.现在要选出尽量多的点. 对于 ...
- 牛客练习赛39 B:选点(二叉树遍历+LIS)
链接: https://ac.nowcoder.com/acm/contest/368/B 来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 131072K,其他语言262 ...
- 树的距离(牛客网树上主席树+dfs序)
链接:https://ac.nowcoder.com/acm/problem/14415 来源:牛客网 题目描述 wyf非常喜欢树.一棵有根数树上有N个节点,1号点是他的根,每条边都有一个距离,而wy ...
- 牛客练习赛34 E little w and Digital Root(数位dp)
title: 牛客练习赛34 E little w and Digital Root(数位dp) date: 2018-12-17 22:38:37 tags: 数位dp categories:ACM ...
- 牛客练习赛54(A,B,C(ATCG相同的分在一起 暴力加巧妙差分))
牛客练习赛54 日常刷一套牛客练习赛题 A-乘积 n这么小 暴力即可,不知道unsinged long long 操作,用java大数写了: import java.math.BigInteger; ...
- 牛客练习赛76 F-phi and phi 莫比乌斯反演+差分
牛客练习赛76 F-phi and phi 莫比乌斯反演+差分 题意 思路 Code(445MS) 传送门: https://ac.nowcoder.com/acm/contest/10845/F 题 ...
- 牛客练习赛81 E. 小 Q 与函数求和 1( “简单莫比乌斯反演” ,欧拉函数性质)
整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 牛客练习赛81 E. 小 Q 与函数求和 1( "简单莫比乌斯反演" ) Prob ...
- 解题报告(一)C、(牛客练习赛41 F)简单数学题(数论 + FWT)(3.5)
繁凡出品的全新系列:解题报告系列 -- 超高质量算法题单,配套我写的超高质量题解和代码,题目难度不一定按照题号排序,我会在每道题后面加上题目难度指数(1∼51 \sim 51∼5),以模板题难度 11 ...
- 牛客练习赛34 - C little w and Segment Coverage(思维、树状数组)
title: 牛客练习赛34 - C little w and Segment Coverage(思维.树状数组) date: 2018-12-15 16:36:55 tags: [树状数组,思维] ...
最新文章
- Android 框架炼成 教你怎样写组件间通信框架EventBus
- 关于数据集 使用PutCollect后m_Recordset-Update();数据集更新报错的问题
- 对当前目录及子目录下的所有源码文件及Makefile打包
- c++ tinyxml2 解析xml小坑
- abp+dapper+mysql_ABP公共结构 – 时间与时区设置 - ABP 中文文档
- Motion and Optical Flow
- socket之远程执行命令
- word 中快速加入序号等符号
- msxml 6.0 dll 导入问题
- [精简]托福核心词汇98
- JDK 1.8 中的 Timer 类
- 二阶魔方入门玩法教程
- 并行与分布式计算导论(六)MPI入门
- 数值计算与MATLAB微积分
- Android系统日历读取各厂商农历年重复event
- AquaCrop_原理学习笔记08:胁迫系数和冠层发育
- 一阶广义差分模型_4.2 序列相关性_清华大学:计量经济学(李子奈博导)_ppt_大学课件预览_高等教育资讯网...
- OTB 2013 使用教程
- 利用EXCEL提取出生年月(格式自定义)、计算年龄、判断性别
- 三星PM9A1 00B00公版7801Q固件分享及升级教程