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:在[ ...
随机推荐
- 分库分表(3) ---SpringBoot + ShardingSphere 实现读写分离
分库分表(3)---ShardingSphere实现读写分离 有关ShardingSphere概念前面写了两篇博客: 1.分库分表(1) --- 理论 2. 分库分表(2) --- ShardingS ...
- pycharm 2019/10 激活码 最新福利 (1)
MTW881U3Z5-eyJsaWNlbnNlSWQiOiJNVFc4ODFVM1o1IiwibGljZW5zZWVOYW1lIjoiTnNzIEltIiwiYXNzaWduZWVOYW1lIjoiI ...
- [插件化开发] 1. 初识OSGI
初识 OSGI 背景 当前product是以solution的方式进行售卖,但是随着公司业务规模的快速夸张,随之而来的是新客户的产品开发,老客户的产品维护,升级以及修改bug,团队的效能明显下降,为了 ...
- 疑似网络抖动引起的RAC单节点宕机
- 使用malloc函数或new运算符为链表结点分配内存空间
目录 使用malloc函数或new运算符为链表结点分配内存空间 使用malloc函数或new运算符为链表结点分配内存空间 当我们定义链表结点类型后,如何在每次需要使用新结点时临时分配相应大小的内存空间 ...
- 攻防世界(XCTF)逆向部分write up(一)
晚上做几个简单的ctf逆向睡的更好 logmein elf文件 ida看看main函数伪代码 void __fastcall __noreturn main(__int64 a1, char **a2 ...
- 《疯狂java-突破程序员基本功的16课 》笔记总结
本人最近读完<疯狂java-突破程序员基本功的16课 >读完后,感觉对java基础又有了新的认识,在这里总结一下:一.数组与内存控制 1.1 数组初始化 java语言的数组是静态的 ...
- Vbox中unbuntu15.10与win10共享文件 及开启复制粘贴功能
学习linux,一直使用的是VMware虚拟机,虽然功能很强大,但总感觉页面切换很麻烦.所以转入Vbox的使用,下面介绍下unbuntu15.10与win10共享文件. 一 共享文件夹 步骤1:启动u ...
- PHP get_object_vars 和 get_class_vars
<?php class Girl { public $id = 1; public $name = 'zhy'; } $girl = new Girl(); var_dump(get_class ...
- 问题:LinkedList 是原始类型。应该将对通用类型 LinkedList<E> 的引用参数化
jdk1.5之后,引入了泛型,类似下面这种写法会出现类似警告,可以忽略, LinkedList llist = new LinkedList();也可以修改一下,指定类型 LinkedList&l ...