陆陆续续做完了……

与或和(单调栈)

这是一道一眼题……

看到位运算,按位考虑贡献。对于每一位,将矩阵中的元素变为“当前元素的这一位是否为\(1\)”,那么原矩阵变为\(01\)矩阵。在\(01\)矩阵中能够对\(AND\)产生贡献的是全\(1\)的矩阵,能够对\(OR\)产生贡献的是存在\(1\)的矩阵,那么我们需要求全\(1\)和全\(0\)矩阵,单调栈做一下就可以了。

代码

宝牌一大堆(DP)

这是一道暴力题……

国士无双可以直接判,七对子用贪心判一下,对于\(3 \times 4 + 2\)的结构,对于每一种花色DP:设\(f_{i,j,k,l,m,n}\)表示考虑第\(i\)种花色的第\(j\)种牌,选了\(k\)个面子和杠子、\(l\)个对子、\(m\)个\((j-1,j,j+1)\)的顺子、\(n\)个\((j,j+1,j+2)\)的顺子的最大达成分数。转移枚举\(j+1\)的数量、\((j+1,j+2,j+3)\)的数量,剩下的做对子/刻子/杠子。对于字牌也这样DP一下,只是不需要考虑顺子。

最后合并的时候枚举一下每一种花色选了多少对子、面子和杠子然后合并就可以了。

代码

特技飞行(贪心、扫描线)

这是一道强行二合一……

首先我们求能够被嘉宾看到的特技数量。因为特技的位置和嘉宾的视野范围是固定的,所以最开始用一个set维护出所有的特技的位置,然后曼哈顿距离转切比雪夫距离之后就是要求每一个点是否被任意一个正方形覆盖,离散化+扫描线即可。这一段相对细节较多。

然后我们要求最大和最小的特技分数。注意到特技分数和选择某一种特技的次数呈正相关,那么我们只需要求出“对向交换”次数最多和最少的方案数,就可以得到分数最小和最大的方案数。“对向交换”次数最多的显然是所有交点都使用“对向交换”。

“对向交换”最少的情况考虑:对于每一个飞机,如果它在\(x_{st}\)处的纵坐标排名为\(i\),在不使用“对向交换”到达\(x_{ed}\)时的纵坐标排名为\(j\),那么连边\((i,j)\)。我们可以得到一个\(N\)个点、\(N\)条边、由若干个环构成的有向图,而我们最终的目标是让这个图变为\(N\)个自环。而每一次“对向交换”可以交换两个点最终的纵坐标排名,也就是交换两条边的出边,所以对于一个长度为\(len\)的环需要\(len - 1\)次交换,所以最小总次数=$\sum len - 1 = N - $环的个数。

代码

逼死强迫症(矩阵快速幂)

这是一道模板题……

设\(f_{i,0/1/2}\)表示填满了前\(i\)列、放了\(0/1/2\)个\(1 \times 1\)的方块的方案数。转移只需要考虑放\(1\)的方案,其他和斐波那契数列没有不同。注意两个\(1 \times 1\)的方块不能放在一起。

矩阵大小大概是\(5 \times 5\)

代码

旅行者(最短路)

这是一道简单题……

一种比较直接的思路是:正着、反着跑两遍从关键点到其他所有点的最短路和次短路长度,然后对于每一条边\(x \rightarrow y\)考虑贡献答案,如果从关键点到\(x\)的最短路对应的点和从\(y\)到关键点的最短路对应的点是同一个就用一条最短路和一条次短路更新。

但是实际上如果某一条路径是答案,那么在这条路上一定会存在一条边\(x \rightarrow y\),使得从关键点到\(x\)的最短路对应的点和从\(y\)到关键点的最短路对应的点是不同的。所以可以直接记录最短路从哪里来,也是正确的。

代码

旧词(差分、树链剖分)

这是一道大家都应该见过的数据结构题……

没有思路的建议先去做LNOI2014 LCA

然后可以发现这就是上面那道题的\(k\)次方版本。那么对于点\(x\),记录它的权值为\(dep_x^k - (dep_x - 1)^k\),那么点\(x\)对点\(y\)的贡献就是\(LCA(x,y)\)及其祖先节点的权值之和。仍然用树链剖分+线段树维护链上权值和即可。

代码

GZOI/GXOI2019的更多相关文章

  1. 【GZOI 2019】特技飞行

    Problem Description 公元 \(9012\) 年,Z 市的航空基地计划举行一场特技飞行表演.表演的场地可以看作一个二维平面直角坐标系,其中横坐标代表着水平位置,纵坐标代表着飞行高度. ...

  2. [LOJ3083] [GXOI2019] 与或和

    题目链接 LOJ:https://loj.ac/problem/3083 洛谷:https://www.luogu.org/problemnew/show/P5300 Solution 逐位考虑,可以 ...

  3. [LOJ3086] [GXOI2019] 逼死强迫症

    题目链接 LOJ:https://loj.ac/problem/3086 洛谷:https://www.luogu.org/problemnew/show/P5303 Solution 显然不考虑\( ...

  4. GXOI&GZOI

    T1 与或和   2s&&512MB   简明题意:求一个矩阵的所有子序列的 \(and\)和 和\(or\)和: 子矩阵的\(and\)和就是所有值\(and\)起来:\(or\)类 ...

  5. GZOI 2017配对统计 树状数组

    题目 https://www.luogu.com.cn/problem/P5677 分析 最开始读题的时候没有读的太懂,以为i是在选定区间内给的,实际上不是,这道题的意思应该是在l和r的区间内找出有多 ...

  6. 「ZJOI Day2」游记

    Day-1 晚上一直在出自己做的模拟赛的T1,真的快要死掉了. 分类讨论几十种情况. 窝还是找了Bluesky大佬一起来验题,她瞬间就A掉了这一道题目...自闭了.. 诶,我还是太弱了. 之前教练组织 ...

  7. JavaScript 高级程序设计(第3版)笔记——chapter5:引用类型

    Chapter5 引用类型 本章内容: l  使用对象 l  创建并操作数组 l  理解基本的JavaScript类型 l  使用基本类型和基本包装类型 l  从技术上讲,JavaScript是一门面 ...

  8. OI暑假集训游记

    莞中OI集训游记 Written BY Jum Leon. I        又是一载夏,本蒟蒻以特长生考入莞中,怀着忐忑的心情到了8月,是集训之际.怀着对算法学习的向往心情被大佬暴虐的一丝恐惧来到了 ...

  9. [solution]JZOJ-5838 旅游路线

    [solution] JZOJ-5838 旅游路线 Time Limits 1000ms,Memory Limits 128MB 题面 Description GZOI队员们到X镇游玩.X镇是一个很特 ...

随机推荐

  1. nodejs+nvm历史版本

    官网:http://nodejs.org/dist/ 淘宝镜像:https://npm.taobao.org/mirrors/node/ nvm历史版本:https://github.com/core ...

  2. 计蒜客——Nise-Anti-AK Problem

    Nise-Anti-AK Problem #include<iostream> using namespace std; int b[1000]; int main() { ios::sy ...

  3. Go字符串常用处理

    应用到strings包 /** * @Author: jadeshu * @Description: * @File: main * @Version: 1.0.0 * @Date: 2019/11/ ...

  4. HDU-5215 Cycle(边双/判奇偶环)

    题目 HDU-5215 Cycle 网上那个啥dfs的垃圾做法随便弄组数据已经hack掉了 做法 纯奇环偶环通过dfs树上,染色判断(由于偶环可能有两个奇环,通过一点相交,dfs树上并不能判完) 两环 ...

  5. 【CSP模拟赛】starway(玄学建边 最小生成树)

    问題描述 小w伤心的走上了 Star way to heaven.   到天堂的道路是一个笛卡尔坐标系上一个n×m的长方形通道(顶点在(0,0))和(n,m)),小w从最左边任意一点进入,从右边任意一 ...

  6. 当变量超过任意设定的变量限制时终止fluent模拟【翻译】

    一些时候某个特定的变量(压力,速度,温度等)发散会造成不合理的计算结果.在许多算例,当变量超过某些合理的限制时,自动停止/打断模拟是有帮助的. 解决方法是联合UDF和scheme文件.UDF将会遍历所 ...

  7. docker_基础用法

    1. docker architecture 2. 命令

  8. Wireshark常用快捷键&&过滤器语法

    目录 一.快捷键 二.过滤器语法 1.捕获过滤器的BPF(Berkeley Packet Filter)语法 2.显示过滤器 一.快捷键 Ctrl+M 标记/取消标记 shift+ctrl+N/B 下 ...

  9. vue 中使用阿里iconfont彩色图标

    在main.js中 import './assets/images/iconfont/iconfont.css'import './assets/images/iconfont/iconfont.js ...

  10. 第09组 Alpha冲刺(1/4)

    队名:软工9组 组长博客: https://www.cnblogs.com/cmlei/ 作业博客: 组员进度 ● 组员一(组长) 陈明磊 ​ ○过去两天完成了哪些任务 ​ ●文字/口头描述 ​ 初步 ...