zoukankan      html  css  js  c++  java
  • 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)

    只能说差强人意了。

  • 相关阅读:
    shell getopt getopts获取参数
    apache+svn+ladp认证
    SVN 迁移项目分支
    iptables 优先级
    很实用的一篇HTTP状态码
    套路还在——矩阵计算估值
    CU上看到的一个简单的算法帖子
    linux下服务端实现公网数据转发
    c++接口实现与分离(转载)
    c++继承概念
  • 原文地址:https://www.cnblogs.com/river-flows-in-you/p/11936603.html
Copyright © 2011-2022 走看看