• 1031. 高一学堂 (at)


    题目描述

    在美丽的中山纪念中学里面,有一座高一学堂。所谓山不在高,有仙则名;水不在深,有龙则灵。高一学堂,因为有了yxr,就成了现在这个样子 = =。

    由于yxr的语言太过雷人,每次他发微往往都会有一石激起千层浪的效果,具体就是所有关注他的人都会转发,同时@他,接着关注这些人的人也会转发,同时@他关注的人(注意转发内容本身会有@yxr),以此类推。这样导致每次yxr发微博都会被@上兆次,而yxr又特别喜欢发,sina 支持不了如此庞大的数据量,特出规定,每次转发时,@的人不能超过 KK 人,好友在转发时如果超过了,就把最早那人删掉。现在yxr刚发了一条微博“求满分”,他想知道每个与他有联系的人分别会被@多少次。

    输入格式

    输入第一行有三个整数 N,KN,K,表示人数和KK。

    接下来 N-1N1 行,每行有 22 个整数 a,ba,b,表示 aa 和 bb 有关注关系。

    输入给出一棵以 11 号点为根的树,一号点代表yxr,对于任意一个点,他的儿子都关注他。

    输出格式

    输出有 NN 行,每行有一个整数,这个人会被@多少次。

    样例

    样例输入

    5 2
    1 2
    2 3
    2 4
    4 5

    样例输出

    3
    3
    0
    1
    0

    数据范围与提示

    对于 30\%30% 的数据,N≤100N100;
    对于 60\%60% 的数据,N≤100000,k≤100N100000,k100; 对于 100\%100% 的数据,N≤100000N100000。

    来源

    20120920

    solution
    题意是求一个点向下k层的子树大小。树剖可以做。
    考虑简单一点的方法。我们用所有的减去深度>k层的。
    那么可以维护每个点子树和深度k+1层之前的点减掉即可
  • 相关阅读:
    没有精神分裂的测试不是一个好家长
    防火墙中配置开放 8080端口--续上一篇
    rocketMQ(一)基础环境
    如何做一个对账系统
    通用对账系统介绍与设计(上)
    pdf转图片
    虚拟机加载类机制
    jenkins
    zookeeper和dubbo
    正则日常积累
  • 原文地址:https://www.cnblogs.com/liankewei/p/10524245.html
Copyright © 2020-2023  润新知