2019 OI总结

10.5

上午改题,下午考试。
题目是提高组找的一些dp题。

过河

\(sort\),只有20。
\(s=t\)的情况特判一下,否则把距离超过100的相邻2个石头距离变成100,再直接跑\(dp\)就行了。

加分二叉树

我也记不得是第几次做了

树的划分

\(dp\)一下没想出来,就打了个\(195\times 5\)的表,过了。

这题其实是排列组合里的题,可以把一个数值为n的数当做n个小球,划分的份数k当做k个盒子,那么本题可以转化为“将n个小球放到k个盒子中,小球之间与盒子之间没有区别,并且最后的结果不允许空盒”
将n个小球放到k个盒子中的情况总数 =
a.至少有一个盒子只有一个小球的情况数
b.没有一个盒子只有一个小球的情况数
这样进行划分是因为这种分类可以使a和b都有能写出来的表达式:
a.因为盒子不加区分,那么1的情况数与“将n-1个小球放到k-1个盒子中”的情况数一样
b.没有一个盒子只有一个小球,那么把每个盒子中拿出来一个小球,对应的是“把(n-k)个小球放到k个盒子中的情况数”
然后将上面的思路化为动态转移方程:
设f[n,k]代表将n个小球放到k个盒子中且没有空盒的情况,那么f[n,k] = f[n-1,k-1] + f[n-k,k]
而当k=1时只有1种方法(小球全部放进1个盒子)

统计单词个数

我把状态设成了区间,强行让复杂度多了个\(n\)。其实只要设成前\(i\)个就行了。

邮票面值设计

纯暴力\(dfs\)+\(dp\),数据水就过了。

篝火晚会

答案就是转换成链以后最少的不匹配数。

10.4

上午考试,下午考试。
日常被xbq吊打。

猜你喜欢

转载自www.cnblogs.com/Qihoo360/p/11625686.html
OI