CSP-S 2019 游记

CSP-S 2019 游记

Day1

T1

是一个非常简单的模拟题,大概在\(O(log_2 n)\)的时间内就可以轻易解决。

但好像有人猜了一个式子,据说是\(k\)^\((k>>1)\)

我当时的反应:???

怎么推出来的?

是在下输了。

期望得分\(100\),签到成功

T2

也是一道简单题。

首先,显然可以知道,在一堆括号后面再加一个括号,新增的合法的括号子串的右端点必然是当前这个括号。

如果把左括号看做\(+1\),右括号看做\(-1\)

那么显然左端点的值应当与右端点相等(注:这里是左开右闭的区间),且中间没有低过左右端点的点。

然后开一个数组记录每个值最后一次出现在哪里,再开一个数组记录每个点以他为右端点的区间个数

那么,新增的这个点的贡献就可以递推出来。

考场降智,还额外写了一个线段树。

期望得分\(100\),签到成功

T3

这是什么神仙题?

拿暴力\(10\)分走人

期望得分\(10\)

Day 2

T1

总方案数可以很容易地计算出来。

可以发现每种不合法的方案都唯一对应一种过多的食材。

那么枚举此种过多的食材,将此种食材视为\(-1\),其他食材视为\(+1\)

那么这种食材不合法的方案就是所有权值为负数的方案。

时间复杂度\(O(n^2m)\)

应当得分\(100\),开小数组挂了\(16\)

期望得分\(84\),签到失败。

T2

暴力\(n^2\)走人

得分\(64\)

T3

考场上大致想到了正解,可是没打出来。

幸亏先打了个暴力

期望得分\(40\)

总期望得分:\(398\)

只能说差强人意了。

posted @ 2019-11-26 16:37  霞光  阅读(110)  评论(0编辑  收藏  举报