http://codeforces.com/problemset/problem/739/B

dfs,记录距离前缀和,每次找到离最近的不符合的点。

#include<iostream>
#include<cstring>
#include<cstdio>
#include<algorithm>
#include<vector>
using namespace std; int n,cnt = ,a[],b[],sta[],ans[] = {};
long long dis[];
vector<int> v[]; void dfs(int x,long long deep)
{
sta[++cnt] = x;
dis[x] = deep;
for(int i = ;i < v[x].size();i++)
{
int t = v[x][i];
dfs(t,dis[x]+b[t]);
ans[x] += ans[t]+;
}
int l = ,r = cnt-;
while(l < r)
{
int mid = (l+r+)/;
if(dis[x]-dis[sta[mid]] > a[x]) l = mid;
else r = mid-;
}
ans[sta[l]]--;
cnt--;
}
int main()
{
scanf("%d",&n);
for(int i = ;i <= n;i++) scanf("%d",&a[i]);
for(int i = ;i <= n;i++)
{
int x,y;
scanf("%d%d",&x,&y);
v[x].push_back(i);
b[i] = y;
}
dfs(,);
for(int i = ;i <= n;i++) printf("%d ",ans[i]);
printf("\n");
return ;
}

Codeforces_739_B的更多相关文章

随机推荐

  1. JAVA8学习——Stream底层的实现三(学习过程)

    Stream的深入(三) 心得:之前学习流,深入了流的底层.但是学的这些东西在平时日常开发的过程中,是根本不会用到的.只是为了更好帮助自己去理解流的底层设施.用起来也更自信,能够确定用的东西非常正确. ...

  2. bootstrap:导航分页

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <meta name ...

  3. schedule of 2016-09-19~2016-09-25(Monday~Sunday)——1st semester of 2nd Grade

    2016/9/19 Monday 1.make ppt for today's group meeting 2.recite 100 words 3.review <图解机器学习>ch1~ ...

  4. 视频分片上传+C#后端合并

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  5. 微信小程序之猜拳游戏

    ---恢复内容开始--- 最近几天在学习小程序,看了网上的学习视频,于是自己捣鼓着做出了视频里面的小程序. 这是实现的效果图 一个小程序页面,一般有三个部分文件组成,index.js 这个文件里面放的 ...

  6. python报错: invalid syntax

    invalid syntax: 无效的语法. 解决办法:查看当前语句中的  , 如果当前行没找到错误,依次往上找,往上找时可以利用是否有输出进行快速查找. 原因:python语法很严格,少了左括号.右 ...

  7. 【LC_Overview1_5】---学会总结回顾

    刷LeetCode题目一周,主要采用C++和Python编程手段,截至目前做了5道简单的leetcode题目,做下阶段性的小结: 小结主要通过手撕代码,复习加回顾,尽量避免自己眼高手低的情况发生,对于 ...

  8. P4513 小白逛公园 动态维护最大子段和

    题目链接:https://www.luogu.org/problem/P4513 #include<iostream> #include<cstdio> #include< ...

  9. jqGrid以setGridParam方式postData,包含历史数据的问题

    系统在使用jqGrid时,如果某些页面的查询项是复选框,后台是数组接收的,就会出现传值不正确问题. 1.项目中某查询页面存在的复选框:待处理S1,正在处理S2,已处理S3: 使用jqGrid提交查询数 ...

  10. Android Studio 图形化设计 UI 界面

    我们开发 Android 程序必定是从 UI 开始的 ,使用最新版的 Android Studio 可以在图形化界面下设计软件 UI, Android Studio 默认的布局是 Constraint ...