省选模拟五十六 题解

T1

异或和为0则先手必败

设\(dp[i][j][k]\)代表考虑到\(i\)选了\(j\)个数(对\(d\)取模)异或和为\(k\)的方案数

假如把\(a\)从大到小排序的话便可以剪枝:

第三维是\(2^b\)(b是满足\(2^b>a[i]\)的第一个数)

复杂度\(O(1e7*d)\)

T2

设\(f[i][j][k]\)代表从S走k步到T不经过S,T的方案数

\(g[i][j][k]\)代表从S走k步到T的方案数

\(h[i][j][k]\)代表从S走k步到S不经过T的方案数

\(g\)可以暴力求出来

则有转移:

\(f[S][T][d]=g[S][T][d]-\sum_{i=1}^{d-1}f[S][T][i]*g[T][T][d-i]+h[S][T][i]*g[S][T][d-i]\)

\(h[S][T][d]=g[S][T][d]-\sum_{i=1}^{d-1}h[S][T][i]*g[S][S][d-i]+f[S][T][i]*g[T][S][d-i]\)

很教科书

T3

打暴力会发现可以把行列交换

设\(f[i]\)代表\(i\)这行是否被操作,\(g[i]\)是列

那么这轮后\((i,j)\)变成\(f[i]\ xor\ g[j]\)

然后把f/g=1的全部放到上/左面

现在便成了一个\(2*2\)的矩阵

每个矩阵里的数字在第一轮及以后后一定都是一样的

拿线段树求出初始状态后模拟即可

原文地址:https://www.cnblogs.com/AthosD/p/12589845.html

时间: 2024-11-06 09:55:01

省选模拟五十六 题解的相关文章

省选模拟二十九 题解

T1 考场上只想到了枚举拆三元环,拿到60pts 发现其实有一个性质没有用到: 保证将这  个点移除后,剩余的图将不存在环. 假设黑点为没有被钦定的点,白点反之 三白的情况无解 那么一个三元环只能由二黑一白/二白一黑组成, 后者已经固定了,直接选,而前者并不是很好处理 首先对黑白点分别求出子图的Top序(由于是竞赛图,所以Top序是严格的) 接着对于每个黑点处理出它到白点的一个序列(设W->B=1,B->W=0) 把序列按照白点Top序排序 考虑什么样的x才是不合法的 当且仅当存在一个0在1的

省选模拟三十四 题解

T1 假如max(a)<0的话直接把所有的a排个序贪心选择大的尽量多 现在考虑一个正的ai对后面的影响 维护一个大根堆,a<0就往里添,a>=0就去抵消堆顶元素 这样新序列(堆里的元素)就可以像刚才那样做了 T2 先把点按权值从大到小排序 然后枚举那个点可以选也可以不选 前面的都已经选了 然后在当前枚举的颜色中优先选择那些到根的路径上权值合法的 更新答案 因为如果要是想往小枚举的话一定要选择完当前颜色 所以把当且颜色全部连到根上后还需要额外的考虑中间小于当且权值的点 就是一个递归模拟 最

第三百五十六节,Python分布式爬虫打造搜索引擎Scrapy精讲—scrapy分布式爬虫要点

第三百五十六节,Python分布式爬虫打造搜索引擎Scrapy精讲-scrapy分布式爬虫要点 1.分布式爬虫原理 2.分布式爬虫优点 3.分布式爬虫需要解决的问题

省选模拟三十五题解

昨天出去浪,今天发烧,考试虚的一批,暴力挂了2个,T3的性质猜出来了但是只打了50分,没有时间打满分 T1 假设现在删蓝树,in[x]代表dfs到x的最小时间戳,out代表最大 那么一条原先删的边(p,q)会让蓝树里的(x,y)删掉当: (假设dfn[x]<dfn[y],dfn[p]<dfn[q]) 1>in[q]=<in[x]<=out[q]&&in[y]>out[q] 2>in[q]=<in[y]<=out[q]&&

Android实战简易教程-第五十六枪(模拟美团客户端进度提示框)

用过美团客户端的朋友都知道,美团的加载等待提示很有意思,是一种动画的形式展现给我们,下面我们就对这背后的原理进行了解,然后实现自己的等待动画效果. 首先我们准备两张图片: 这两张图片看起来一模一样啊?细心的朋友会发现唯一不同的就在脚部,OK,我们就利用这两张图片的轮换播放实现动画效果,下面看一下代码: 1.动画文件frame_meituan.xml: <?xml version="1.0" encoding="utf-8"?> <animation

省选模拟五 题解

写在前面: 我好菜啊 伯努利数和自然数幂和的式子都能忘 A. 青蛙 标签: 贪心+二分 题解: 首先我们贪心的让尽量多的青蛙免费跳过去,可以二分求出 考虑剩下的青蛙如何让费用最小: 假如免费的青蛙非零,那么一定可以把中间的石头跳完 这种情况下其他每个青蛙的最小花费一定是一次 另一种情况是没有免费的青蛙 直接让花费最小的青蛙把中间的石头跳一遍,其他的花费仍然都为一次 B. 一起自习的日子 标签: 伯努利数 题解: 我们知道伯努利数有两种$B^{-}$和$B^{+}$ 其中: $$\sum\limi

Linux学习总结(五十六)监控zabbix部署 下篇

zabbix 应用举例 一 添加自定义监控项目 我们举一个实例:监控web服务器80端口的并发连接数,并设置图形.1 . 写一个可以抓取数据的脚本,在客户端zabbix-agent 上创建脚本 vim /usr/local/sbin/estab.sh #!/bin/bash netstat -ant |grep ':80 ' |grep -c ESTABLISHED 保存后,给脚本777权限脚本测试:sh /usr/local/sbin/estab.sh 看是否报错2 在zabbix客户端配置文

一个屌丝程序猿的人生(五十六)

"蓟门桥西到了.请乘客有序上下车,下车请刷卡." 随着公交车上报音员的声音响起,公交车缓缓的停了下来. 林萧从公交车上下来,便直奔宿舍而去.方才在培训机构,林萧第一个离开了教室,这倒不是他自恃项目已经写完了,对张建接下来要讲的没有兴趣. 而是他已经想好了,该如何在这次项目中,达到一鸣惊人的效果,以至于他迫不及待的便离开了. 至于林萧想到的办法,简单的来说,就是两个字--质量. 其实林萧完全赶得上张建的学习速度,甚至可以比张建更快,之所以林萧在速度上落后了,实际上是由于他研究了很多,教学

第五十六条:遵守普遍接受的命名惯例

Java平台建立了一套很好的命名惯例(naming convention),其中有许多命名惯例包含在<The  Java  Language Specification>中. 不严格的讲,这些命名惯例分为两大类:字面的和语法的. 字面的命名惯例比较少,但也涉及包,类,方法,域和类型变量. 包的名称应该是层次状的,用"."分割每个部分.任何将在你的组织之外使用的包,其名称都应该以你的组织的Internet域名开头,并且将 顶级域名放在前面,例如com.sun ,gov.nsa