NEERC Southern Subregional 2011

NEERC Southern Subregional 2011

A - Bonnie and Clyde

solution
双指针搞搞就好。安全

时间复杂度:\(O(n)\)ui

B - Building Foundation

题目描述:给定\(n\)条线段(水平或垂直),问能构成多少个矩形(只要矩形的四条边都被线段覆盖便可),水平线段不相交,垂直线段不相交。spa

solution
预处理出每条垂直的线段与哪些水平的线段相交,而后枚举两条垂直的线段,数一下有多少公共的水平线段\(s\),答案增长\(C_s^2\)指针

时间复杂度:\(O(n^3)\)字符串

C - Dice Tower

题目描述:用骰子搭成一个\(1 \times 1 \times h\)的长方体,知足表面的数字的和为\(n\),输出最小的\(h\)或无解。it

solution
注意一个骰子和两个骰子之间的状态是无解,其它的特殊状况都比较好想。io

时间复杂度:\(O(1)\)class

E - Berland Chess

题目描述:给定一个\(n \times m\)的棋盘,棋盘上有一个白色的国王,还有若干个黑色的骑士、主教、城堡(总共不超过15个),如今要移动白色国王,问他安全状况下最少多少步吃掉全部黑色棋子(黑色棋子不动)。im

solution
状压,对黑色棋子进行编号,用\((sett, x, y)\)表示当前还剩的棋子集合以及白色国王的坐标,而后bfs求解。能够先预处理出当棋子集合为\(sett\)时,那些格子是安全的。集合

时间复杂度:\(O(8 \cdot 2^{15}n^2)\)

F - Divisibility

题目描述:给定一个只有小写字母而且字母种类不超过\(10\)种,长度不超过\(14\)的字符串,给每个字母分配一个\(0\)~\(9\)的数字(不一样字母数字不一样),那么所给的字符串对应一个没有前导零的数字,求获得的数字的公共约数。

solution
原问题等价于求全部数字的最大公约数+求一个数字的全部约数。
先考虑字母种类不超过\(9\)种的状况,那么对于某一种字母,单独改变这一种字母的分配数字,获得的数字做差,这些数字都是\(num\)的倍数,其中\(num\)是指这种字母的位置取\(1\),其它位置取\(0\)对应的数字。对于每一种字母求出对应的\(num\),求\(num\)的最大公约数。
考虑字母种类数不超过\(10\)种的状况,取其中两种字母,其中一种填\(1\),另外一种填\(0\),其它字母不变,交换两种字母的分配数字,做差,获得数字为两种字母对应的\(num\)做差,求出全部二元组的最大公约数。
因为上面获得的最大公约数是做差获得的,因此还要随便求出一种可行的分配方案对应的数字,再求一次最大公约数,才是真正的最大公约数。
因为数字比较大,因此要把数字分解质因数后,再穷举全部约数。

时间复杂度:\(O(能过)\)

K - Emoticons

solution
模拟,按照题目要求的作便可。

时间复杂度:\(O(n)\)

相关文章
相关标签/搜索