2017-Sp250-team2
从 Trac 迁移的文章
这是从旧校内 Wiki 迁移的文章,可能存在一些样式问题,您可以向 memset0 反馈。
原文章内容如下:
[[Image(1.png,500px)]]
== 流水账 ==
出门各自看题,sub上机写H,'''H1y12''',cjb和yzc开了B,'''B2y20'''。之后sub上机写D,'''D1y52'''。cjb开出了F丢给yzc,yzc上机wa了之后对拍,'''F3y95'''。sub给了G的做法,cjb上机写G,wa了之后对拍,'''G2y167'''。yzc上机写J,'''J3y187'''。之后yzc和sub想C,cjb想I,苦思了很久,终于得到了I的做法,sub上机'''I1y257''',之后rush C,tle后wa。
=== chenjb ===
出门几个有点代码量的题都有点挣扎,今天大家代码状态可能一般。我犯了很低级的错把log当做2为底的垃圾错误非常sb。最后面对两道构造题,C确实需要更多时间,I的启示是(其实之前吃过类似的亏)不要总想着先入为主给题目定调,一道“数学”可能是dp,今天这道看起来要贪心的题,实际上最后还是回到了基础性质,用dp来判定,包括堡堡之前出在青岛的那道线段树也是这样,还是要忠于题目本身的性质,不要在一条路上走到死。
=== oipotato ===
=== subconscious ===
== 题解 ==
* A:cjb
* B:子序列则是2*min(cnt0,cnt1),子串则考虑给0赋1,1赋值-1,前缀和求相等,顺序扫过去即可。
* C:sub
* D:转化为mod 9p=1,记i^j^ mod 某数x = 0,枚举需要多少次方才能整除,超过64可以直接计算。
* E:按题解即可,本题正解提供者为sub。
* F:枚举上下边界,压为1维,用two-pointer去扫,用两个单调队列维护最大最小值。
* G:枚举最大值,得到有效区间[l,r],然后选择较小的一半枚举边界,另一边界用二分求得,根据单调性二分边界可以不断收缩。
* H:排序之后取第n/2个点,向上偏一点的接近竖线即可。
* I:每个位置的取值可以只取有关系的3个中位数之一,f[n][3][3]表示第i和第i-1个位置取了哪个值,dp即可。
* J:用set模拟。

流水账
出门各自看题,sub上机写H,H1y12,cjb和yzc开了B,B2y20。之后sub上机写D,D1y52。cjb开出了F丢给yzc,yzc上机wa了之后对拍,F3y95。sub给了G的做法,cjb上机写G,wa了之后对拍,G2y167。yzc上机写J,J3y187。之后yzc和sub想C,cjb想I,苦思了很久,终于得到了I的做法,sub上机I1y257,之后rush C,tle后wa。
chenjb
出门几个有点代码量的题都有点挣扎,今天大家代码状态可能一般。我犯了很低级的错把log当做2为底的垃圾错误非常sb。最后面对两道构造题,C确实需要更多时间,I的启示是(其实之前吃过类似的亏)不要总想着先入为主给题目定调,一道“数学”可能是dp,今天这道看起来要贪心的题,实际上最后还是回到了基础性质,用dp来判定,包括堡堡之前出在青岛的那道线段树也是这样,还是要忠于题目本身的性质,不要在一条路上走到死。
oipotato
subconscious
题解
- A:cjb
- B:子序列则是2*min(cnt0,cnt1),子串则考虑给0赋1,1赋值-1,前缀和求相等,顺序扫过去即可。
- C:sub
- D:转化为mod 9p=1,记ij mod 某数x = 0,枚举需要多少次方才能整除,超过64可以直接计算。
- E:按题解即可,本题正解提供者为sub。
- F:枚举上下边界,压为1维,用two-pointer去扫,用两个单调队列维护最大最小值。
- G:枚举最大值,得到有效区间[l,r],然后选择较小的一半枚举边界,另一边界用二分求得,根据单调性二分边界可以不断收缩。
- H:排序之后取第n/2个点,向上偏一点的接近竖线即可。
- I:每个位置的取值可以只取有关系的3个中位数之一,f[n][3][3]表示第i和第i-1个位置取了哪个值,dp即可。
- J:用set模拟。
附加文件
- 2019牛客暑期多校训练营第三场题解.pdf by chenjb
- contest-12742-en.pdf by chenjb
- 1.png by chenjb