HYNB Round 8: 2016 ICPC Amritapuri Regionals

A - Tim and BSTs

做法

  • 经典的树 DP 问题。
  • \(dp[u][i]\) 表示考虑以 u 为根子树,u 的 rank 为 i 方案数。
  • 关于 \(dp[u][]\) 的计算,枚举左子树有几个比根小的,枚举右子树有几个数字比根小。合并两棵子树的复杂度为 \(O(sz_1 * sz_2)\),因此可以 \(O(n^2)\) 计算答案。

B - A Historic Discussion

做法

  • 每次把一个集合分裂成两个大小尽可能相等的集合放到两边
  • 次数为把n除2上取整变成1需要的次数

C - Influence on Social media

做法

  • 预处理所有合法的数字,合法的数字一定是 \(p^k\) 形式,其中 \(k+1\) 为质数。
  • 注意排序输出。

E - Black Money Island

做法

  • 问题转化为给一个图,有白边和黑边,问是否存在恰有 k 条黑边的生成树。
  • 第一眼带权二分......... 有点憨憨。
  • 口胡一个引理:对于任意一棵包含黑边数最少的生成树 \(T_1\),存在一棵包含极多黑边的生成树 \(T_2\),使得 \(T_1\) 中的黑边是 \(T_2\) 中黑边的子集。
  • 口胡一个证明:考虑 \(T_1\) 中黑色的非树边,逐条添加,加上后得到一个环,如果环上存在白边,删除白边,如果不存在,删除刚添上的黑边。
  • 做一棵包含黑边数最少的生成树 \(T_1\),保留下 \(T_1\) 中所有黑边,并查集维护点连通性,逐条添加其它黑边。

F - Notes and GPS Chips

做法

  • 构造第一种芯片的生成函数:\(f(x)=\sum_{i=1}^{\infty}i^2x^i=\frac{x(1+x)}{(1-x)^3}\)
  • 构造第二种芯片的生成函数:\(g(x)=\sum_{i=1}^{\infty}3i(i+1)x^i=\frac{6x}{(1-x)^3}\)
  • 于是答案为\((f(x))^A*(g(x))^B\)里\(x^N\)的系数
  • 把\(\frac{6^B(1+x)^Ax^{A+B}}{(1-x)^{3A+3B}}\)里的\((1+x)^A\)拆开枚举一下,剩下是个组合数,复杂度\(O(A+B)\)
  • 贼基本的组合数求蒙了导致没写出来。。。
  • 至今不知道题意怎么读出来的p序列前A个是第一种芯片后B个是第二种芯片

G - Hawala Arrests

做法

  • 考虑树是根链的 case,问题是个经典的序列上贪心问题:序列上,选择极少的点,使得每个区间至少包含一个点。
  • 把连通块的根当成右端点即可。
  • 不会证明。

H - Netcoin Verification


I - Mancunian Hoards Black Money

做法

从大到小考虑,可以拿的物品,就拿,不拿的话,拿之后所有的物品都凑不齐。


J - Bob vs ATM

做法

  • 根据括号序列建树。
  • 删除一段相当于删除子树,树上删边游戏。

K - Paint for Vernon

HYNB Round 8: 2016 ICPC Amritapuri Regionals的更多相关文章

  1. 2016 ICPC总结

    2016 ICPC总结 九月份开学,开始知识点的补充,刚开始的几周都在刷acmsteps,十月开始进行专题性的学习,首先进行的数据结构,给自己定的计划,十一月前看完数据结构,刚开始的时候看的都是以前的 ...

  2. 2016 ICPC Mid-Central USA Region J. Windy Path (贪心)

    比赛链接:2016 ICPC Mid-Central USA Region 题目链接:Windy Path Description Consider following along the path ...

  3. HYNB Round 15: PKU Campus 2019

    HYNB Round 15: PKU Campus 2019 C. Parade 题意 将平面上n*2个点安排在长度为n的两行上. 做法 首先可以忽略每个点之间的影响,只用考虑匹配即可 然后把所以点归 ...

  4. 2016 ICPC青岛站---k题 Finding Hotels(K-D树)

    题目链接 http://acm.hdu.edu.cn/showproblem.php?pid=5992 Problem Description There are N hotels all over ...

  5. 2016 ICPC北京站现场赛总结(再度流水账)

    其他的都先不说,北大的未名湖真的美! 虽然感觉北大其他地方都有些破旧之感,但是未名湖附近真的值得称赞. 在去北京之前就听说北京温度很低,不过是干冷,果不其然.北京不冷,就是嘴唇太干了,不喝水真的受不了 ...

  6. [Google Codejam] Round 1A 2016 - The Last Word

    [Problem Description] Problem On the game show The Last Word, the host begins a round by showing the ...

  7. 2021ICPC网络赛第一场部分题解-The 2021 ICPC Asia Regionals Online Contest (I)

    写在前面 本来应该6题的,结果不知道哪个铸币发了H的clar,当即把我们的思路转向三维几何上.当时我们还在想这三维计算几何的正确率有点太高了还在感叹ICPC选手的含金量,直到赛后我才知道这H题的铸币出 ...

  8. 2016 ICPC大连站---F题 Detachment

    题意:输入一个x,将x拆分成一些小的数(这些数不能相同,即x=a1+a2+......   ai!=aj when i!=j),然后这些数相乘得到一个成积(s=a1*a2*......),求最大的乘积 ...

  9. 2016 ICPC China-Final 现场赛总结

    距离比赛结束快有一个礼拜了才抽出时间来写这篇总结.今年比赛打了也有5场了(4场区域赛+1场省赛),也取得了不错的成绩(区域赛两银),总的来说第一年就取得这成绩还是挺高兴的.我们队,我自己都渐渐的趋于成 ...

随机推荐

  1. 解析Spring MVC上传文件

    新建一个普通的maven工程 在pom.xml文件中引入相应的坐标 <?xml version="1.0" encoding="UTF-8"?> & ...

  2. Typora使用入门

    使用sublime编写markdown语法不太方便,使用专门的markdown编辑软件会更方便一些! 1.typora常用快捷键 ctrl + /     切换编辑语法模式/预览模式 ctrl + 1 ...

  3. 《DNS攻击防范科普系列3》 -如何保障 DNS 操作安全

    引言 前两讲我们介绍了 DNS 相关的攻击类型,以及针对 DDoS 攻击的防范措施.这些都是更底层的知识,有同学就来问能否讲讲和我们的日常操作相关的知识点,今天我们就来说说和我们日常 DNS 操作相关 ...

  4. NX二次开发-更改图纸尺寸内容(编辑文本)uc5566

    #include <uf.h> #include <uf_drf.h> #include <uf_obj.h> #include <uf_part.h> ...

  5. csp-s模拟测试95

    csp-s模拟测试95 去世场祭. $T1$:这不裸的除法分块吗. $T2$:这不裸的数据结构优化$Dp$吗. $T3$:这不裸的我什么都不会搜索骗$30$分吗. 几分钟后. 这除法分块太劲了..(你 ...

  6. Java io简单总结

    IO 字节流在操作时本身不会用到缓冲区(内存),是文件本身直接操作的 字符流在操作时使用了缓冲区,通过缓冲区再操作文件 缓冲:一段特殊的内存.如果一个程序频繁地操作一个资源(如文件或数据库),则性能会 ...

  7. 转-C/C++ new与malloc区别

    1.属性 new/delete是C++关键字,需要编译器支持.malloc/free是库函数,需要头文件支持. 2.参数 使用new操作符申请内存分配时无须指定内存块的大小,编译器会根据类型信息自行计 ...

  8. django中filter()和get()的区别

    在django中,我们查询经常用的两个API中,会经常用到get()和filter()两个方法,两者的区别是什么呢? object.get()我们得到的是一个对象,如果在数据库中查不到这个对象或者查找 ...

  9. Delphi 2010 中的泛型

    Delphi 2010 中的泛型 2010已发布很长时间了,口碑还不错,准备用它开发下一项目,但对泛型等新东西的认识还不够,就搜了一下,发现下面这篇文章,还不错,大家一起补补课吧! C++中的模板.C ...

  10. kafka 批量添加topic 副本数

    shell 脚本: 1)列出只有一个副本的topic,保存到一个文件中: [root@hdp05 src]# cat fush.sh #!/bin/bash # topics=`/usr/hdp//k ...