这场其实心态十分爆炸,首先一下午改上次破T3卡常一下午没过,心情十分暴躁。上来开题不顺利,T1想了一个小时没动。于是跳到T2,看T2的80pts貌似可拿就先打了。T3只会判10分,又想打个$2^{2N}$暴力看能不能骗点分。回头再看T1,恍然发现是个$N^3 dp$,打完了想对拍却不太会打暴力。又去检查T2。最后结果:A了T1,T2只有40分,T3爆零(数据分治判错了)。十分出乎意料的是T1、T2均30人左右AC,太强了吧。T2的部分分可能并没有数据。

T1:

  把环拆成两倍的链,考虑$dp$,设$f[i][j]$表示到$i$处向前合并了长度为j的集合时的最优答案,最终目标$max{f[i][N]},N<i<=2N$,转移前需要预处理区间颜色数,做到$O(1)$转移,$f[i][j+k]=\max \{f[i][j]+f[i-j][k]+cnt[i-k-j+1][i-j]*cnt[i-j+1][i] \}$(枚举合并两个集合的长度)。

T2:

40pts:

  先考虑如果不下滑,一定是按$a$从大往小嗑药。有下滑,最后一步一定不用下滑,枚举最后一步的药,之前每一步按$a-b$从大往小选取,目标高度为L减去相应的$a$。$O(N^2)$。

100pts:

  考虑如何快速计算出最后一步之前最少需要多少药才能到达目标高度。如果没有放水,那么排序之后直接前缀和+二分就可以。有了水位的限制,我们的答案要在被淹死之前。也就是要判断某一天是否已被淹死。同样记录放水的前缀和(就是每天的水位),用人的高度减水的高度,维护这个差值的前缀$min$,可以初步判断某一天是否被淹死。但是我们枚举了最后一步,而前缀$min$是静态的,就是说,在二分时判断第$m$天,若$m$比最后一步的顺序靠前,那么用前缀$min$就直接可以;若$i$在$m$前,那么在$i$之前的天照样前缀$min$不影响,而$i$之后的每一天实际上要减去上一天的水位(因为$i$为最后一步不能算),所以维护每一天的高度前缀和减去上一天的水位的$min$值。因为查询区间左端点不再只是$1$,所以$st$表维护。最终二分时加上判断这一天在淹死之前的条件。$O(N \log N)$。

T3:

  简单学了一下博弈论和SG函数,但这题的难点其实在于转化和建模。

10pts:

  没有全翻正的情况,只需判断最后谁不能翻了,即$ (H+W)\&1 $。

30pts:

  需要判断出是否存在全翻正的方案。每行、每列只能翻一次,对于一个硬币,如果它是正,要么一次也不翻,要么翻行和列;如果是反,需要反行或列。对于这样的问题很想二分图,我们抽象成图:每行、每列各为一个点,如果有硬币$(x,y)$为正,向行点$x$、列点$y$连一条“边0”,否则连"边1”。这样做的意义是,颜色1表示翻,0表示不翻,要让最终硬币全翻正。最后染色,经过"边1"时将颜色$xor 1$,判断是否冲突。

100pts:

  对于一个$ICG$,它的必胜局面为$SG!=0$,多个ICG和起来总的SG为每个子游戏的异或和。对于本题来说建图后每个联通块成为了一个子游戏,根据SG函数判断先手胜负。考虑每一个联通块,最后胜局落在谁手里和这个联通块需要多少次操作有关。设这个联通块内需要操作的点有$a$个,不需操作的有$b$个,$a$,$b$可以互换因为先手可以选择。一个联通图如果是$a$、$b$都是偶数,先手必败,$SG=0$;如果$a$、$b$都是奇数,后继局面$SG$都是$0$,所以本局面$SG=1$,先手必胜;如果$a$、$b$一奇一偶,后继局面$SG=1$或$SG=0$,本局面$SG=2$,先手必胜。最终根据子游戏异或和判断。

csp-s模拟106的更多相关文章

  1. csp模拟赛低级错误及反思

    \(csp\)模拟赛低级错误及反思. 1.没开\(longlong\). 反思:注意数据类型以及数据范围. 2.数组越界(前向星数组未开两倍,一题的数据范围应用到另一题上,要开两倍的写法为开两倍数组) ...

  2. CSP 201612-3 权限查询 【模拟+STL】

    201612-3 试题名称: 权限查询 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述 授权 (authorization) 是各类业务系统不可缺少的组成部分,系统用户通过授权 ...

  3. [考试反思]1109csp-s模拟测试106:撞词

    (撞哈希了用了模拟测试28的词,所以这次就叫撞词吧) 蓝色的0... 蓝色的0... 都该联赛了还能CE呢... 考试结束前15分钟左右,期望得分300 然后对拍发现T2伪了写了一个能拿90分的垃圾随 ...

  4. CSP复赛day2模拟题

    没错,我又爆零了.....先让我自闭一分钟.....so 当你忘记努力的时候,现实会用一记响亮的耳光告诉你东西南北在哪. 好了,现在重归正题: 全国信息学奥林匹克联赛(NOIP2014) 复赛模拟题 ...

  5. 【CSP模拟赛】Freda的迷宫(桥)

    题目描述 Freda是一个迷宫爱好者,她利用业余时间建造了许多迷宫.每个迷宫都是由若干房间和走廊构成的,每条走廊都连接着两个不同的房间,两个房间之间最多只有一条走廊直接相连,走廊都是双向通过.  黄昏 ...

  6. 【CSP模拟赛】starway(玄学建边 最小生成树)

    问題描述 小w伤心的走上了 Star way to heaven.   到天堂的道路是一个笛卡尔坐标系上一个n×m的长方形通道(顶点在(0,0))和(n,m)),小w从最左边任意一点进入,从右边任意一 ...

  7. @CSP模拟2019.10.16 - T3@ 垃圾分类

    目录 @description@ @solution@ @accepted code@ @details@ @description@ 为了保护环境,p6pou建设了一个垃圾分类器. 垃圾分类器是一个 ...

  8. CSP模拟赛2游记

    这次由于有课迟到30min,了所以只考了70min. 调linux配置调了5min,只剩下65min了. T1:有点像标题统计,但要比他坑一点,而且我就被坑了,写了一个for(int i=1;i< ...

  9. CSP模拟赛游记

    时间:2019.10.5 考试时间:100分钟(连正式考试时间的一半还没有到)题目:由于某些原因不能公开. 由于第一次接触NOIinux系统所以连怎么建文件夹,调字体,如何编译都不知道,考试的前半小时 ...

随机推荐

  1. my SO 链接opencv静态库一些FUCKing的笔记 opencv410 有毒

    1. 2. CMake "/work/lib/opencv/ubuntu14/4.1.0" make[2]: *** No rule to make target `/usr/lo ...

  2. C# 循环中 直接索引 VS 缓存索引 性能测试

    using System; namespace TestCSharp { class MainClass { public class t1 { public b1 b = new b1(); } p ...

  3. 编译 SharpNav 遇到的问题和解决过程

    https://github.com/Robmaister/SharpNav 是github上基于recastnavtigation的一个C#项目. github上并没有详细的编译过程. 首先把项目c ...

  4. webpack如何使用vue

    1.安装vue的包:  cnpm i vue -S 2.在main.js中导入包 3.运行起来报错 3.1第一种解决办法: 3.2第二种解决办法: 让我们先回顾一下包的查找规则: //1.找项目根目录 ...

  5. OpenCV实现图象翻转、滤波、锐化

    OpenCV实现图象翻转.滤波.锐化 注:以下代码,使用opencv库函数实现了对图片的翻转.灰度图转换.各种滤波.各种锐化. 库函数相关参数及说明参阅:OpenCV中文站=>opencv教程( ...

  6. 安卓直连SQLSEVER数据库

    1.导入连接SQLSEVER的jar包:可以支持android的SQL驱动(如:jtds-1.2.7.jar) 2.编写连接数据库的工具类 import java.lang.reflect.Field ...

  7. dbm和发射功率得对照表

    原文链接:https://blog.csdn.net/nicholas_dlut/article/details/80950163dBm mW 下面是dbm和发射功率得对照表. 基本上市面上所有的无线 ...

  8. 13_sqoop数据迁移概述

    3. sqoop数据迁移 3.1 概述 sqoop是apache旗下一款“Hadoop体系和关系数据库服务器之间传送数据”的工具. 导入数据:MySQL,Oracle导入数据到Hadoop的HDFS. ...

  9. Educational Codeforces Round 76 (Rated for Div. 2) D

    D题 原题链接 题意:就是给你n个怪兽有一个属性(攻击力),m个英雄,每个英雄有两种属性(分别为攻击力,和可攻击次数),当安排最好的情况下,最少的天数(每选择一个英雄出战就是一天) 思路:因为怪兽是不 ...

  10. BCB6 使用TZCompressionStream压缩

          最近由于项目需要涉及到解压第三方公司的数据,在此做一下记录环境部署和使用方法,免得以后忘记.    对方公司的数据是通过TCompressionStream 压缩之后,存到数据库中,采用的 ...