2783: [JLOI2012]树

Time Limit: 1 Sec  Memory Limit: 128 MB
Submit: 753  Solved: 447
[Submit][Status][Discuss]

Description

数列
提交文件:sequence.pas/c/cpp
输入文件:sequence.in
输出文件:sequence.out
问题描述:
把一个正整数分成一列连续的正整数之和。这个数列必须包含至少两个正整数。你需要求出这个数列的最小长度。如果这个数列不存在则输出-1。
输入格式:
每行包含一个正整数n。
每个文件包含多行,读入直到文件结束。
输出格式:
对于每个n,输出一行,为这个数列的最小长度。

第一行是两个整数N和S,其中N是树的节点数。

第二行是N个正整数,第i个整数表示节点i的正整数。

接下来的N-1行每行是2个整数x和y,表示y是x的儿子。

输出格式:

输出路径节点总和为S的路径数量。

输入样例:

输出样例:

3 3

1 2 3

1 2

1 3

2

数据范围:

对于30%数据,N≤100;

对于60%数据,N≤1000;

对于100%数据,N≤100000,所有权值以及S都不超过1000。

数据范围:
对于所有数据,n≤263

这个是JLOI2012的T1,发出来仅为了试题完整

=============================================================================================

在这个问题中,给定一个值S和一棵树。在树的每个节点有一个正整数,问有多少条路径的节点总和达到S。路径中节点的深度必须是升序的。假设节点1是根节点,根的深度是0,它的儿子节点的深度为1。路径不必一定从根节点开始。

Input

第一行是两个整数N和S,其中N是树的节点数。

第二行是N个正整数,第i个整数表示节点i的正整数。

接下来的N-1行每行是2个整数x和y,表示y是x的儿子。

Output

输出路径节点总和为S的路径数量。

Sample Input

3 3

1 2 3

1 2

1 3

Sample Output

2

HINT

对于100%数据,N≤100000,所有权值以及S都不超过1000。

Source

连倍增都不会写了。。。。

 1 #include<bits/stdc++.h>
 2 #define N 102333
 3 #define rep(i,l,r) for(int i=l;i<=r;i++)
 4 using namespace std;
 5 int n,m,s[N][22],fa[N][22],now,w,ans,x,y;
 6 //f[i][j]  从i点向上走2^j-1步
 7 inline int read(){
 8     int x=0,c=getchar();
 9     while(c>57||c<48)c=getchar();
10     while(c>47&&c<58)x=x*10+c-48,c=getchar();
11     return x;
12 }
13 int main () {
14      cin>>n>>m;
15      rep(i,1,n) s[i][0]=read(); rep(i,1,n-1) x=read(),y=read(),fa[y][0]=x;
16      rep(j,0,20) rep(i,1,n) fa[i][j+1]=fa[fa[i][j]][j],s[i][j+1]=s[i][j]+s[fa[i][j]][j];
17      rep(i,1,n) {
18           now=m; w=i;
19           for(int k=19;k>=0;k--) {
20                if(!fa[w][k]) continue;
21                if(s[w][k]<now) now-=s[w][k],w=fa[w][k];
22           }
23           if(s[w][0]==now) ++ans;
24      }
25      printf("%d\n",ans);
26 }

View Code

转载于:https://www.cnblogs.com/Bloodline/p/5499204.html

bzoj2783: [JLOI2012]树相关推荐

  1. 洛谷P3252 [JLOI2012]树

    题目描述 在这个问题中,给定一个值S和一棵树.在树的每个节点有一个正整数,问有多少条路径的节点总和达到S.路径中节点的深度必须是升序的.假设节点1是根节点,根的深度是0,它的儿子节点的深度为1.路径不 ...

  2. 2019.5.summary

    2019.5.1 CF C. Prefix Sum Primes 感觉CF就是训练妳如何养成对题目强大的YY能力的QAQ 我们构造 如果只有一种,没辙,只能这样放 否则先放一个2,再放一个1 接下来把 ...

  3. 重走长征路---OI每周刷题记录---9月6日 2014

    总目录详见https://blog.csdn.net/mrcrack/article/details/84471041 做题原则,找不到测评地址的题不做.2018-11-28 重走长征路---OI每周 ...

  4. BZOJ刷题记录---提高组难度

    BZOJ刷题记录---提高组难度 总目录详见https://blog.csdn.net/mrcrack/article/details/90228694 序号 题号 算法 思想难度 实现难度 总难度 ...

  5. 8.25 欢乐emmm赛

    三道题 A现代艺术 时间限制 : - MS   空间限制 : 165536 KB  评测说明 : 1s 问题描述 何老板是一个现代派的艺术家.他在一块由n*n的方格构成的画布上作画.一开始,所有格子里 ...

  6. [颓废史]蒟蒻的刷题记录

    QAQ蒟蒻一枚,其实我就是来提供水题库的. 以下记录从2016年开始. 1.1 1227: [SDOI2009]虔诚的墓主人 树状数组+离散化 3132: 上帝造题的七分钟 树状数组 二维区间加减+查 ...

  7. 判断两个树是否相等和判断tree1是否包含tree2 python实现

    判断两个树是否相等 def equal(node_a, node_b):"""判断两个树是否相等:param node_a: :param node_b: :return ...

  8. 论文溯源树AMiner

    来自 DBLP.ArXiv.STM 等多家学术出版机构和平台的数据表明,在过去 20 年间,计算机科学.物理学.统计学等研究领域的出版物总量都有大幅增加.像 CVPR.AAAI 等有关人工智能等新兴领 ...

  9. Python---哈夫曼树---Huffman Tree

    今天要讲的是天才哈夫曼的哈夫曼编码,这是树形数据结构的一个典型应用. !!!敲黑板!!!哈夫曼树的构建以及编码方式将是我们的学习重点. 老方式,代码+解释,手把手教你Python完成哈夫曼编码的全过程 ...

最新文章

  1. 服务端转发html页面,html5关于外链嵌入页面通信问题(postMessage解决跨域通信)
  2. 记一次特别的往事 while 循环
  3. Excel学习笔记002-005:如何按列提取不重复值
  4. java迷宫实训报告_Java综合实训报告-迷宫.doc
  5. [BZOJ4873][六省联考2017]寿司餐厅(最大权闭合子图)
  6. 深掘工业互联网大数据五大维度
  7. 分布式系统中协调和复制技术的原理
  8. SqlCommandBuilder自动创建dataAdapter数据库操作命令
  9. IK10外壳冲击等级测试
  10. windows版本修改,家庭版改专业版,专业版改教育版,或者是改家庭版
  11. OEM、ODM、OBM分别是什么?
  12. 终端设置指南,让Mac/Linux/Windows终端更上一层楼
  13. Android系统Audio框架介绍
  14. 2023电工杯数学建模A题思路
  15. oracle数据类型和Java类型之间的映射关系
  16. 小陈谈JAVA(数组到底是怎样的,三分钟让你彻底认识数组)
  17. 奥克兰大学计算机专业硕士,奥克兰大学计算机专业硕士
  18. Kubernetes相关概念扫盲
  19. python GSM模块-电脑接收短信
  20. OpenCascade Matrix

热门文章

  1. python的数据库操作_Python对数据库操作
  2. delphi基于html页面和xml实现表单填写,如何从xml文件读取数据,并以delphi语言显示在文本框中...
  3. 之前出的一道背包题面,暂无题解
  4. 无线信号拓展与覆盖的解决方案
  5. NOI2018网络同步赛爆零记
  6. 【NOIP2003】【Luogu1044】栈
  7. oracle 修索引改空间_oracle 修改索引现有表空间
  8. python2 爬虫value_53. Python 爬虫(2)
  9. 求n!中末尾零的个数
  10. python数据驱动测试设计_GitHub - 13691579846/DataDriverTestFrameWork: python+selenium+pageobject数据驱动测试框架...