ASCII Area
水题。 遇到\或者/就加0.5 当时 . 的时候,要判断是里面还是外面,可以用射线法。
1 | /* *************** |
B:
Binary Encoding
很简答的题。 先求出k, 是的 $2^{k}<=m$然后其实用k位表示的有$2*m-2^{k}$个,其余是用k-1位表示的。
1 | /* *************** |
C:
Caption
题目比较长,主要是读懂题目,然后去DP。
1 | /* *************** |
D:
Dictionary Size
一个字符串前缀后缀的题目。 给了n个字符串。 a dictionary word 就是一个原来的字符串,或者是非空前缀+后缀。 比较难想。 首先肯定是前缀和后缀都建一个字典树。 那么总数就是cnt1*cnt2 (cnt1和cnt2都不包含那个空点。) 这个总数其实不包含 原来字符串的情况。 然后需要排除掉一些重复的。 需要使用等价的思想去排除掉重复的。 看到个证明比较好的。here 这个说明一部分问题,但是并没有完全说明。 注意原串是可以的,但是前缀或者后缀是不可以的。 去重的时候,不要算第一个点。 这样做过去其实刚好把原串的个数加上了。
1 | /* *************** |
E:
Eve
题目意思很长,主要是读懂题目 题意不赘述了。 并查集胡搞。
1 | /* *************** |
K:
Kingdom Roadmap
题意:给了一颗树,让你加最少的边,使得不存在桥。 很明显需要加的边的数量就是 (leaf + 1)/2 然后需要构造解。 解的构造可以使用类似树形DP的思路。 对于每颗子树,如果有奇数个叶子节点,那么提供1个叶子出来,其余叶子两两连边。 如果有偶数个叶子节点,提供2个叶子出来,其余内部解决。
1 |
|