NOIP模拟 14
垃圾成绩,一点都不稳定。
如果把数组开小的分得到的话..总分还挺不错..
那又能怪谁,都快NOIP了还犯这种傻逼错误
nc哥是要阿卡的节奏..真是太强了
某kyh也不知道偷了谁的rp,分高的一批
wd从来很强..几乎就没失手过
就我一个渣渣还是这么没前途555
暴力的分不会拿555
想到正解拿不到分555
T1 旋转子段
貌似思路和题解并不一样,但是复杂度没区别,还比题解好理解(并不是)
n^2:一个数要回到自己位置,旋转中心一定
用旋转中心的编号替代这个数的位置,不需旋转的数是他自己
用另一个前缀和数组处理不需旋转的数,为了区间得到翻转的损失
枚举每个旋转中心a+b,枚举翻转长度,碰到一个值等于a+b的位置就把计数器ans++
再用ans减去区间的翻转损失来更新答案
nlogn:发现答案只有在ans被更新时更优
否则只是损失白白增大,答案不会更优
所以对于每个翻转中心,用vector存下翻转中心为它的位置
枚举位置,二分查找另一端,相减得到答案
n:发现上述过程满足单调性
枚举一边位置的时候,另一个端点一定单调变化
比如左端点右移,右端点一定不右移。
单调指针,每次端点移动判断一下另一个断点是否移动即可。
vector里只有n个数,所以是O(n)。
T2 走格子
开了0.1倍数组减了40分
要不然高分暴力就85分了啊!
然后发现好像很接近正解了?
就是少考虑了一点啊啊啊!
一定要敢于想正解啊!你不是那么不行!
T3 模拟退火柱状图
学习了模拟退火,可以日爆此题数据,但是换一道题可能就A不掉了
所以打了一遍正解
发现对于一个点,它的花费是左边右边,分开计算,不同公式
对于某一边呢,为了去掉要求枚举的绝对值,又分成大于小于两个值域
这时候计算可以用数据结构维护了
开两个树状数组处理该点左右两边,下标为权值的排名
从左往右扫,一开始把所有点的右权值塞进来
每到一个点,从右bit删掉右权值,给左bit增加左权值
枚举最高点,三分高度,二分查找权值排名
O(nlogklogn)
NOIP模拟 14的更多相关文章
- Noip模拟14 2021.7.13
T1 队长快跑 本身dp就不强的小马看到这题并未反映过来是个dp(可能是跟题面太过于像那个黑题的队长快跑相似) 总之,基础dp也没搞出来,不过这题倒是启发了小马以后考试要往dp哪里想想 $dp_{i, ...
- [NOIP模拟14]题解
当垃圾已经成为一种常态233333 A.旋转子段 考场上的$n^2$手残少了20分,555 (主要是因为实在打不出来$n^3$的做法所以写不了对拍?ccc为什么考场上没有想起有reverse()这么 ...
- [考试总结]noip模拟14
咕掉了好长时间,现在终于回来了.. 这次考试炸裂得很完蛋,直接分数上天. \(T1\) 本来想打一个记忆化搜索,然而老是通过不了样例,然后就挂了,只剩下了垃圾的 \(30pts\) 部分分数. 然而到 ...
- NOIP 模拟 $14\; \text{抛硬币}$
题解 \(by\;\;zj\varphi\) 签到题,自己看题解 Code #include<bits/stdc++.h> #define ri register signed #defi ...
- NOIP 模拟 $14\; \text{影魔}$
题解 \(by\;\;zj\varphi\) 不是原题 一道(对我来说)很需要技巧的题 对于颜色数如何处理 离线,将子树转化为 \(dfs\) 序,但这种做法无法处理深度 我们按照深度加点(可以通过 ...
- NOIP 模拟 $14\; \text{队长快跑}$
题解 \(by\;zj\varphi\) 一道很妙的 \(dp\) 题,方程状态不好设置,细节也不少 看到数据范围,直接想离散化 设 \(f_{i,j}\) 表示处理完前 \(i\) 个水晶,其中摧毁 ...
- noip模拟14
T1 离散化后线段树维护\(dp\),\(fi\)表示最小值为\(i\)时最多点亮多少个, 区间操作即可. Code #include<cstring> #include<cstdi ...
- NOIP模拟14「队长快跑·影魔·抛硬币」
T1:队长快跑 基本思路: 离散化·DP·数据结构优化DP 这三个我都没想到....气死. 定义状态数组:\(c[i][j]\)表示在i时最小的a值是j时可以摧毁的最多的水晶数. 那么 ...
- NOIP模拟 17.8.14
NOIP模拟17.8.14 (天宇哥哥考察细心程度的题) [样例解释]如果删去第一个 1:在[3,1,2]中有 3 个不同的数如果删去 3:在[1,1,2]中有 2 个不同的数如果删去第二个 1:在[ ...
随机推荐
- MongoDB 学习笔记之 批处理
批处理: MongoDB批处理方式有2种, 有序插入(有序仍是顺序处理的.发生错误就停止.) 无序插入(无序列表会将操作按类型分组,来提高性能,因此,应确保应用不依赖操作执行顺序.发生错误继续处理剩余 ...
- reduce方法应用技巧
定义和用法 reduce() 方法接收一个函数作为累加器,数组中的每个值(从左到右)开始缩减,最终计算为一个值. 注意: reduce() 对于空数组是不会执行回调函数的. 浏览器支持 方法 Chro ...
- idea tomcat提示Unable to ping server at localhost:1099
idea启动tomcat报错Unable to ping server at localhost:1099 是 IDEA配置的jdk版本 与 tomcat的jdk版本不配导致的
- 线程池和lambda表达式
线程池1.什么是线程池.一个用来创建和管理线程的容器;2.线程池的作用.提高线程的复用性,降低资源消耗提高线程的响应速度,提高线程的可管理性3.线程的核心思想;线程的复用 4.线程池的创建Execut ...
- VPS虚拟专用服务器
目录 0x00 VPS服务器概述 0x01 VPS工作原理 0x02 VPS用途 0x03 VPS优势 0x04 VPS特点 0x00 VPS服务器概述 VPS服务器(虚拟专用服务器)(" ...
- 机器学习:数据清洗及工具OpenRefine
数据分析中,首先要进行数据清洗,才可以继续训练模型,预测等操作. 首先介绍一下什么是数据清洗(定义来自 百度百科,有删减) 数据清洗从名字上也看的出就是把“脏”的“洗掉”,指发现并纠正数据文件中可识别 ...
- spring源码系列8:AOP源码解析之代理的创建
回顾 首先回顾: JDK动态代理与CGLIB动态代理 Spring中的InstantiationAwareBeanPostProcessor和BeanPostProcessor的区别 我们得知 JDK ...
- [JZOJ5185] 【NOIP2017提高组模拟6.30】tty's sequence
Description
- Spring Boot入门(一):搭建Spring Boot项目
从本篇博客开始,我们开始进入Spring Boot的世界,它的出现使Spring的开发变得更加简洁,因此一经推出受到众多程序员的喜爱. 作为Spring Boot系列的第一篇博客,我们先来讲解下如何搭 ...
- linux使用jq工具解析json
jq类似一个awk或grep一样的神器,可以方便地在命令行操作json 这里我使用海南万宁的天气接口做演示,地址:http://t.weather.sojson.com/api/weather/cit ...