hihoCoder #27
A
QvQ
B
题目:http://hihocoder.com/problemset/problem/1470
分析:dfs序+栈+数学
可以发现,对于每组询问,树上是有很多点都只能等于0的
对于每个节点求出dfs序得到进来的时间和出去的时间
对于询问的限制,可以用括号序列表示:((()()))()()
然后根据各种情况讨论结果
唯一需要计算的是两颗子树,大小分别为n,m,求C(n,0)*C(m,0)+C(n,1)*C(n,m)+....+C(n,n)*C(n,m)
这个实际上等于C(n+m,m),因为对于n中有i个1,m中有i个1的情况,如果把m中的颜色全部取反,那么总共就有m个1,问题等价于从(n+m)中取出m个作为1,其它作为0
C
题目:http://hihocoder.com/problemset/problem/1470
分析:树形dp
很套路的树形dp
套路在状态表示里没有那个限制要求k
f(uxi)表示以u为根的子树,有x条路线向u的上方延伸的答案数
对于从儿子v上来的路线,有三种可能:两条线在u点汇聚成一条、直接在u点结束、继续沿着u上去
在不断合并子树的过程中:
f(u,i+j-k)+=f(u,i)*f(v,j)*C(i,k)*C(j,k)*k!(i、j分别表示伸上来的路线数,k表示各取k条合并成一条线路)
注意每条边只能被经过<=k次
所以对于每个u,f(u,x)(x>k)都是0
D
不会啊TAT
hihoCoder #27的更多相关文章
- hihoCoder #1094 : Lost in the City(枚举,微软苏州校招笔试 12月27日 )
#1094 : Lost in the City 时间限制:10000ms 单点时限:1000ms 内存限制:256MB 描述 Little Hi gets lost in the city. He ...
- hihoCoder挑战赛27题目一 福字 (dp)
题目: 一个n × n的矩阵,其中每个位置都是一个非负整数. 一个福字被定义成是大小为 k 的正方形,满足其中的每个位置上的数都恰好比他的左边的那个和上边的那个大1(如果左边或上边的那个不存在的话就无 ...
- hihocoder #1094 : Lost in the City微软苏州校招笔试 12月27日 (建图不大【暴力枚举】 子图的4种形态 1Y )
#1094 : Lost in the City 时间限制:10000ms 单点时限:1000ms 内存限制:256MB 描述 Little Hi gets lost in the city. He ...
- hihocoder #1052 基因工程
传送门:基因工程 这道题拖了好久,一直没有清晰的思路. 当然,$K\le\frac{N}{2}$时,比较简单.下面我着重讲一下当$K>\frac{N}{2}$,即前$K$个字符与后$K$个字符有 ...
- HihoCoder 重复旋律
あの旋律を何度も繰り返しでも.あの日見た光景を再現できない 无论将那段旋律重复多少次,也无法重现那一日我们看到的景象 もし切ないならば.時をまきもどしてみるかい? 若是感到惆怅的话,要试着让时光倒流吗 ...
- hihoCoder #1471 拥堵的城市
这道题目是hihoCoder Challenge 27的C题,我考虑了5天:(. 计数问题.由于树的结构的特殊性(树具有递归结构),不难想到思路是树形DP.由于这是[计数问题]而非[优化问题],我们思 ...
- hihoCoder 简单计算器
数据结构的入门题,理解倒是不复杂,用两个栈就行(一个存数字一个存符号).对于我这样的弱弱没事练练编码能力还是不错的. 注意运算优先级即可.(过两天回科大了,下次再做题也不知道何时,ACM生涯两铜收场o ...
- 逆序单词 HIhoCoder 1366 字典树
逆序单词 HIhoCoder 1366 字典序 题意 在英文中有很多逆序的单词,比如dog和god,evil和live等等. 现在给出一份包含N个单词的单词表,其中每个单词只出现一次,请你找出其中有多 ...
- HihoCoder#1052:基因工程
HihoCoder#1052:基因工程 时间限制:1000ms 单点时限:1000ms 内存限制:256MB 描述 小Hi和小Ho正在进行一项基因工程实验.他们要修改一段长度为N的DNA序列,使得这段 ...
随机推荐
- [Usaco2011 Jan]道路和航线
Description Farmer John正在一个新的销售区域对他的牛奶销售方案进行调查.他想把牛奶送到T个城镇 (1 <= T <= 25,000),编号为1T.这些城镇之间通过R条 ...
- Android项目模块化遇到的问题
1.问题背景 gradle 4 MacOs 10.14.3 Android Studio 3 在android模块化的时候,例如,有两个模块,一个是usercenter,另一个是common. 其中u ...
- Android 知识Tips
有一些Android很小的知识点,不值得单独写出来做为一篇博客.都在这个博客里面进行总结 1.ImageButton控件,中间图片的放置效果可以用scaleType来设置,如下: <ImageB ...
- Python游戏开发:pygame游戏开发常用数据结构
一.数组与列表 数组可以理解为简化的列表.像我们之前使用的pygame.sprite.Group这样的精灵组,也是一个列表.列表的元素是可变的,它具有添加.删除.搜索.排序等多种方法. 1.一维列表 ...
- Vue渲染原理
现在基本所有的框架都已经认同这个看法——DOM应尽可能是一个函数式到状态的映射.状态即是唯一的真相,而DOM状态只是数据状态的一个映射.如下图所示,所有的逻辑尽可能在状态的层面去进行,当状态改变的时候 ...
- Calendar的用法
DAY_OF_MONTH的主要作用是cal.get(DAY_OF_MONTH),用来获得这一天在是这个月的第多少天 Calendar.DAY_OF_YEAR的主要作用是cal.get(DAY_OF_Y ...
- 【loj6184】无心行挽(虚树+倍增)
题目链接:https://loj.ac/problem/6184 每次询问给一些关键点,询问树上每个点离最近的关键点的距离(以后称为f(u))最大值是多少. 询问数比较大,但 \sum{K} 和n是一 ...
- [BOI2008]Elect 选举
背包. #include <algorithm> #include <iostream> #include <cstdlib> #include <cstri ...
- linux常用操作记录
vim:多行注释 vim中多行注释和多行删除命令,这些命令也是经常用到的一些小技巧,可以大大提高工作效率. 多行注释: 1. 首先按esc进入命令行模式下,按下Ctrl + v,进入列(也叫区 ...
- ecshop笔记
***ecshop在线入门手册***:http://book.ecmoban.com/ 解决ecshop与jquery冲突问题1.修改文件:/js/transport.js在文件最底部增加代码: if ...