NOIP模拟测试19考试反思
这次考试是存在很大问题的,(如果不是T1T2出乎意料地A了,鬼知道会发生什么)
T2A是情理之中,考试的时候测的极限数据跑的很快(无论m什么范围),但是T1真的。。。。。。
T3没有分配太多的时间+没有看清题,WA0
T1正解:这道题,只要有N/D个节点的size可以整除D,那么就可行。
如果说某个节点的size可以整除D,那么当递归到这个节点的时候,一定会把这个节点的子树砍掉,而且砍掉的大小至少为D,则D*N/D即可
主要想说一下T2的优化思路:
基础:二分答案+检验O(n^2*log n)
我们可以发现,在检验的时候,第一个区间是可以直接枚举的,这样就把枚举起点改成枚举第一个区间
bool check(int tim){
register int tot=,tl=n+,tr=n+;
register int now=a[n+],cnt;
while(now<=tim)tl--,now+=a[tl];now-=a[tl],tl++;
while(now<=tim)tr++,now+=a[tr];now-=a[tr],tr--;
while(tl!=n+){
cnt=;tot=;
for(register int j=tr+;j<=tl+n-;j++){
if(j+t<=tl+n-&&sum[j+t]-sum[j-]+tot<=tim){tot+=(sum[j+t]-sum[j-]);j+=t;continue;}
tot+=a[j];if(tot>tim)tot=a[j],cnt++;if(cnt>m){cnt=m+;break;}
}
if(cnt<=m)return ;
now-=a[tl];tl++;while(now<=tim)tr++,now+=a[tr];now-=a[tr],tr--;
}
return ;
}
如代码所示,
这个区间的数量是小于n的(先把左指针移动到最左,然后尽可能往右移动右指针,后面每次左指针右移一个,右指针再尽量扩展)
这样就可以跑过m较大的数据(>100都可以),要是知道数据是2333我就不优化了但追求卓越的我们还要去跑过m较小的点,如果m比较小,那么分出来的区间就是比较大的,然后分块大法就应运而生。
预处理出来前缀和,代码中的t就是根号n,即:能跳就直接跳,倍增思路也是类似。
成功AC,比正解快一倍(逃)
也许,当对正解毫无头绪的时候,优化暴力才是最好的做法。
T3并不难(本来以为会有很多AK的23333333),却没有时间去思考了。
时间分配
下次加油吧
NOIP模拟测试19考试反思的更多相关文章
- 20190716 NOIP模拟测试4 考试反思
总分 127分 满分300 第一题 礼物 10分 一道期望题,看起来挺简单,但对于概率与期望这一块我还不怎么会,花了一个小时调他,最后只QJ了一下10%的测试点 第二题 通讯 90分 显然的缩点求解, ...
- NOIP模拟测试36考试反思
这次考试..炸裂,归根到底是心态问题,考试的时候T1秒正解,但是调了三个小时死活没调出来,最后弃了,T2极水,没时间打了,T3题看都没看,总而言之就是不行. 教练说的对,一时强不一定一直强,心态其实也 ...
- NOIP模拟测试19「count·dinner·chess」
反思: 我考得最炸的一次 怎么说呢?简单的两个题0分,稍难(我还不敢说难,肯定又有人喷我)42分 前10分钟看T1,不会,觉得不可做,完全不可做,把它跳了 最后10分钟看T1,发现一个有点用的性质,仍 ...
- [考试反思]NOIP模拟测试19:洗礼
[]260 []230[]210 []200[8]170[9]160 这套题一般,数据很弱,T1T2暴力都能A,而且都是一些思维题,想不到就爆0. 原因不明,很多一直很强的人在这一次滑铁卢了,于是我个 ...
- 2019.8.13 NOIP模拟测试19 反思总结
最早写博客的一次∑ 听说等会儿还要考试[真就两天三考啊],教练催我们写博客… 大约是出题最友好的一次[虽然我还是炸了],并且数据也非常水…忽视第三题的锅的话的确可以这么说.但是T3数据出锅就是你的错了 ...
- NOIP模拟测试19
T1: 题目大意:将一颗有N个节点的树分割,使得每个联通块大小相等,问一共有多少方案.(N<=1000000) 首先,一条很显然的性质,每个联通块的大小一定是N的因子. 然后,我们可以对于每个因 ...
- 「题解」NOIP模拟测试题解乱写II(36)
毕竟考得太频繁了于是不可能每次考试都写题解.(我解释个什么劲啊又没有人看) 甚至有的题目都没有改掉.跑过来写题解一方面是总结,另一方面也是放松了. NOIP模拟测试36 T1字符 这题我完全懵逼了.就 ...
- 2019.8.3 [HZOI]NOIP模拟测试12 C. 分组
2019.8.3 [HZOI]NOIP模拟测试12 C. 分组 全场比赛题解:https://pan.baidu.com/s/1eSAMuXk 刚看这题觉得很难,于是数据点分治 k只有1和2两种,分别 ...
- 2019.8.3 [HZOI]NOIP模拟测试12 B. 数颜色
2019.8.3 [HZOI]NOIP模拟测试12 B. 数颜色 全场比赛题解:https://pan.baidu.com/s/1eSAMuXk 数据结构学傻的做法: 对每种颜色开动态开点线段树直接维 ...
随机推荐
- 常见过滤器表格整理,Date,time过滤格式表;常用标签表
一.常用过滤器表 二.date.time过滤器参数表 三.模板常用标签 四.模板标签示例 ①if,for ②url解析标签 ③with缓存标签 ④autoescape的使用 ⑤注释标签(多行注释)一般 ...
- Delphi Tips
Delphi Tips 函数篇 语法篇 函数篇 StrToDate() function StrToDate(const S: string): TDateTime; function StrToDa ...
- 无意间做了个 web 版的 JVM 监控端(前后端分离 React+Spring Boot)
之前写了JConsole.VisualVM 依赖的 JMX 技术,然后放出了一个用纯 JMX 实现的 web 版本的 JConsole 的截图,今天源码来了. 本来就是为了更多的了解 JMX,第一步就 ...
- 使用Jmeter并发websocket协议项目
1.安装Jmeter 网址:http://jmeter.apache.org/下载 2.启动Jmeter \apache-jmeter-5.1.1\bin\jmeter.bat 3.安装‘Plugin ...
- Integer类型与int的==比较
前言 Java中有两种类型 基本类型 基本数据类类型存的是数值本身 引用类型 引用类型变量在内存放的是数据的引用 基本类型通过==比较的是他们的值大小,而引用类型比较的是他们的引用地址 正文 在一些特 ...
- ubuntu16.04安装zlib
sudo apt-get install zlib1g-dev 下载:libzip-1.0.1.tar.gztar zxcv libzip-1.0.1.tar.gzcd libzip-1.0.1./c ...
- Redis中是如何实现分布式锁的?
分布式锁常见的三种实现方式: 数据库乐观锁: 基于Redis的分布式锁: 基于ZooKeeper的分布式锁. 本地面试考点是,你对Redis使用熟悉吗?Redis中是如何实现分布式锁的. 要点 Red ...
- Go中http超时问题的排查
背景 排查 推测 连接超时 疑问 http2 解决超时 并发连接数 服务端限制 真相 重试 解决办法 问题1 背景 最新有同事反馈,服务间有调用超时的现象,在业务高峰期发生的概率和次数比较高.从日志中 ...
- JVM 启动调优总结
启动命令 格式: java -jar 命令行参数 jar包路径 .示例如下 java -Dfile.encoding=utf-8 -jar -XX:MetaspaceSize=128m -XX:Max ...
- Intellij idea 一个窗口打开多模块并添加依赖
打开多模块 ctrl+alt+shift+s 或者file->project sturcture 选择modules 添加 选择要添加的模块 选择从现有模块添加,不要选择从现在代码创建模块 添加 ...