首页 > 极客资料 博客日记
CSP 联训 3
2024-10-07 19:30:03极客资料围观20次
好吧,又倒数了,就签了个 T2,100 pts。
T1 我把相同颜色的存起来,每种颜色找出枚举选哪两个座位不合法的矩阵的左上和右下,如果找到的矩阵左下和右上也相同,则这个矩阵确实不合法,减去,但判断左下和右上的时候写的太急(最后十五分钟才开始打这个暴力)少判了和当前颜色是否相同,挂了 80 pts,!
总共就打了这两个题一挂挂一整道。
推下闲话(密码与菜同大): https://www.cnblogs.com/YuenYouth/p/18438103
五彩斑斓
一眼很签啊,但是不会。想到反着处理找四个点全相同的矩阵数量就好了,但怎么找啊??
正解:
显然答案其实就是总矩阵数减去四个顶点全相同的矩阵数量。
对于求四个顶点全相同的矩阵数量,可以枚举矩阵的上下边所在行,再枚举一下列,对于每一种颜色开一个桶存这两行这一列的位置都是这个颜色的数量,统计答案就好了。
错峰旅行
签且签了!
正解:
一个城市在一个区间 \([l,r]\) 内是拥挤的,其实就是在第 \(l\) 产生一个新的拥挤城市
显然答案就是询问的 \([s,t]\) 区间内的每一天可以去的城市个数的乘积。
但发现 \(t\) 的数据范围是 \(10^9\),很难不 \(T\) 不 \(RE\),但又发现修改的次数是 \(10^6\) ,也就是说在每两次相邻的修改的间隔之间对答案的贡献是一样的,那就可以顺序枚举修改的位置快,速幂计算出修改间隔间对答案的贡献。
线段树
区间 dp,想不到(
设 \(f_{i,j}\) 表示线段树只留下 \([i,j]\) 区间,询问用到的区间个数。
求出 \(s_{i,j}\) 表示包含区间 \([i,j]\) 的询问个数,枚举 \([i,j]\) 间的割点 \(k\),有转移: \(f_{i,j}<-f_{i,k}+f_{k+1,j}-s_{i,j}\)。
对于 \(s_{i,j}\),简单容斥一下,对于每一个询问区间 \([l,r]\) 让 s_{l,r}++
,再容斥转移,\(s_{i,j}=s_{i,j}+s_{i-1,j}+s_{i,j+1}-s_{i-1,j+1}\),区间 \([i,j]\) 会由左边区间 \([i-1,j]\) 和 右边区间 \([i,j+1]\) 转移而来,再减去重复的区间 \([i-1,j+1]\) 。
量子隧穿问题
标签:
相关文章
最新发布
- Nuxt.js 应用中的 prerender:routes 事件钩子详解
- 【问题解决】Tomcat由低于8版本升级到高版本使用Tomcat自带连接池报错无法找到表空间的问题
- 【FAQ】HarmonyOS SDK 闭源开放能力 —Vision Kit
- 六、Spring Boot集成Spring Security之前后分离认证流程最佳方案
- 《JVM第7课》堆区
- .NET 8 高性能跨平台图像处理库 ImageSharp
- 还在为慢速数据传输苦恼?Linux 零拷贝技术来帮你!
- 刚毕业,去做边缘业务,还有救吗?
- 如何避免 HttpClient 丢失请求头:通过 HttpRequestMessage 解决并优化
- 让性能提升56%的Vue3.5响应式重构之“版本计数”