FJOI2017前做题记录
FJOI2017前做题记录
2017-04-15
[ZJOI2017] 树状数组 问题转化后,变成区间随机将一个数异或一,询问两个位置的值相等的概率。(注意特判询问有一个区间的左端点为1的情况,因为题目要求,所以这种情况要特殊考虑)考虑一个修改操作对一个询问的影响,分为以下几类:
(1) 区间不包含任何一个点,这种情况对答案没有影响。
(2) 区间只包含其中一个点,这种情况有\(1/len\)的概率影响答案
(3) 区间同时包含两个点,这种情况有\(2/len\)的概率影响答案。
这个时候我们把线段的左右端点看做两维,操作时间看做第三维,然后这个时候原问题就变成了三维偏序问题。用树套树或cdq分治+线段树来解决即可。(我写的是cdq分治套线段树)。
2017-04-16
AtCoder Grand Contest 013 A B C 一场非常失败的\(AGC\),整场就过了第一题(还WA了三发)。。。
A题问一个数组最少能被划分成多少个权值单调不增或不减的区间。刚开始懒得写贪心,然后就找性质,发现只和波峰和波谷的数量有关。然后写一发样例就不过了。(相邻的波峰和波谷选一个就可以了)然后强行判过样例交上去WA。很着急啊,然后发现有可能波峰或波谷是一段平的。于是就直接unique掉然后交。又WA。发现unique我打的是unique(a+1,a+n)。。。感觉整个人傻逼了。改完a。
B题题目看很久+想复杂了。找一个路径使得和路径的头尾相连的点都在路径中。题目叫哈密顿路径然后我就真的往那边去想了QAQ,结果就掉坑了(果然题目里的算法都不能信)。。。正解是直接用deque去扩展,扩展到不能扩展位置。(其实这个思路有在我脑袋里闪过,结果不知道怎么搞deque就弃了)
C题思维题啊。在刘汝佳的白书上有这道题,就是蚂蚁撞来撞去那道。我的思维卡在如何找到某一个数的位置上然后未果。看了题解还是不懂。最后强行看别人Code去理解。考虑以下几个性质(这几个性质白书上也有):
- 两个蚂蚁相撞以后会头可以看做他们继续前进,然后交换他们\(id\) 。
- 任何时候所有蚂蚁的相对位置不会发生改变。
- 所有蚂蚁的最终位置可以直接加上/减去t来确定。
由2 3 可得,最终蚂蚁的位置是通过对所有蚂蚁的终态排序得到的。也就是说我们只要知道第一个蚂蚁的位置就知道了所有其他蚂蚁的位置。
如何求得第一个蚂蚁的位置是本题的关键(也是我考场上不会做的关键QAQ)。一个思路是考虑在什么时候整个序列的绝对位置会发生变化。我们发现,这个时候就是有一个蚂蚁跨过0这个位置的时候。如果这个蚂蚁跨过0以后顺时针移动,那么相当于整个排名右移一位,并且把最后一位放到了第一位。逆时针就相反。所以我们就记录一下绝对排名的偏移量,最后输出时第一个蚂蚁的位置就是这个偏移量。
2017-04-17
[Sdoi2017]d1t3 矩阵快速幂(性质:循环矩阵)
2017-04-18
[Sdoi2017]d1t1 莫比乌斯反演
2017-04-19
【UER#6】抓捕罪犯 2-SAT
2017-04-20
[Sdoi2017]d2t1 分数规划+费用流
[Ynoi2017]d1t1 莫队+bitset
2017-04-21
3489: A simple rmq problem 可持久化树套树
[Ynoi2017]d1t2 树链剖分套线段树、位运算相关、贪心
2409: 地下车会 上下界的最大流
3876: [Ahoi2014]支线剧情 上下界费用流
2521: [Shoi2010]最小生成树 最小生成树->联通关系->最小割->最大流
2017-04-22
4570: [Scoi2016]妖怪 凸包。注意点:不仅仅是最优斜率要统计答案,对于凸包上的边也要统计答案。
4817: [Sdoi2017]树点涂色 lct+线段树。注意:lct上的父亲并不是原树上的父亲!
FJOI2017前做题记录的更多相关文章
- NOIP前做题记录
鉴于某些原因(主要是懒)就不一题一题写了,代码直接去\(OJ\)上看吧 CodeChef Making Change 传送门 完全没看懂题解在讲什么(一定是因为题解公式打崩的原因才不是曲明英语太差呢- ...
- Sam做题记录
Sam做题记录 Hihocoder 后缀自动机二·重复旋律5 求一个串中本质不同的子串数 显然,答案是 \(\sum len[i]-len[fa[i]]\) Hihocoder 后缀自动机三·重复旋律 ...
- UOJ 做题记录
UOJ 做题记录 其实我这么弱> >根本不会做题呢> > #21. [UR #1]缩进优化 其实想想还是一道非常丝播的题目呢> > 直接对于每个缩进长度统计一遍就好 ...
- project euler做题记录
ProjectEuler_做题记录 简单记录一下. problem 441 The inverse summation of coprime couples 神仙题.考虑答案为: \[\begin{a ...
- 退役IV次后做题记录
退役IV次后做题记录 我啥都不会了.... AGC023 D 如果所有的楼房都在\(S\)同一边可以直接得出答案. 否则考虑最左最右两边的票数,如果左边>=右边,那么最右边会投给左边,因为就算车 ...
- 退役III次后做题记录(扯淡)
退役III次后做题记录(扯淡) CF607E Cross Sum 计算几何屎题 直接二分一下,算出每条线的位置然后算 注意相对位置这个不能先搞出坐标,直接算角度就行了,不然会卡精度/px flag:计 ...
- 退役II次后做题记录
退役II次后做题记录 感觉没啥好更的,咕. atcoder1219 历史研究 回滚莫队. [六省联考2017]组合数问题 我是傻逼 按照组合意义等价于\(nk\)个物品,选的物品\(\mod k\) ...
- BJOI做题记录
BJOI做题记录 终于想起还要做一下历年省选题了2333 然而咕了的还是比做了的多2333 LOJ #2178. 「BJOI2017」机动训练 咕了. LOJ #2179. 「BJOI2017」树的难 ...
- [日记&做题记录]-Noip2016提高组复赛 倒数十天
写这篇博客的时候有点激动 为了让自己不颓 还是写写日记 存存模板 Nov.8 2016 今天早上买了两个蛋挞 吃了一个 然后就做数论(前天晚上还是想放弃数论 但是昨天被数论虐了 woc noip模拟赛 ...
随机推荐
- PostgreSQL SQL优化之NOT IN问题
在我们平时写SQL时,如果遇到需要排除某些数据时,往往使用id <> xxx and id <> xxx,进而改进为id not in (xxx, xxx); 这样写没有问题, ...
- Postgresql 监控sql之 pg_stat_statements模块
postgresql.confpg_stat_statements.max = 1000000pg_stat_statements.track = allpg_stat_statements.trac ...
- javase-整数变量的交换
public class Operator { public static void main(String[] args) { int a=10; int b=20; System.out.prin ...
- JavaScript和JSON转化
1, JSON转JavaScript JSON.parse():https://www.runoob.com/json/json-parse.html 2, JavaScript转JSON JSON. ...
- python实现更换电脑桌面壁纸,锁屏,文件加密方式
python实现更换壁纸和锁屏代码 #控制windows系统 import win32api,win32con,win32gui # 可以利用python去调用dll动态库的包.嵌入式开发 from ...
- SVN服务器搭建与配置管理
1.下载和搭建SVN服务器 现在Subversion已经迁移到Apache网站上了,下载地址:http://subversion.apache.org/packages.html,这是二进制文件包的下 ...
- 进程之multiprocessing模块代码篇
这里再把之前的内容总结和补充一下: 并发和并行: 你在干坏事,来了一个电话,干完坏事再去接电话,说明你既不是并发也不是并行. 你在干坏事,来了一个电话,你接完电话接着干坏事,说明你支持并发 你在干坏事 ...
- 网络信息统计netstat|ss|ip
1:netstate[弃用] netstat的作用: 需求 原命令 新命令 1:网络连接 netstat -a ss 2:路由表 netstat -r ip route 3:统计接口 netstat ...
- oracle 重置密码(一般电网,国企需要的二级等保)
oracle 10g,11g 可以查找以下,12c没有测试 一.查看profile配置并记录;二.在重置密码之前修改profile(PASSWORD_REUSE_MAX.PASSWORD_REUSE_ ...
- Spring Cloud netflix 概览和架构设计
pring Cloud是基于Spring Boot的一整套实现微服务的框架.他提供了微服务开发所需的配置管理.服务发现.断路器.智能路由.微代理.控制总线.全局锁.决策竞选.分布式会话和集群状态管理等 ...