Wannafly挑战赛1
地址:https://www.nowcoder.com/acm/contest/15#question
A(树形dp)
分析
dp[i][0],dp[i][1]分别表示以i为根的子树中,有多少个点到i的距离为偶数、为奇数
那么每次merge i点和i点的某个儿子u的时候,统计一下答案就行了,ans+=dp[i][0]*dp[u][1]+dp[i][1]*dp[u][0]
时间复杂度$O(n)$
B(枚举)
分析
每次枚举一个区间(i,j),统计1~i-1中有多少个区间异或值和(i,j)的异或值相同
可以i从小到大枚举,维护一个权值数组,将1~i-1所有区间的异或值丢到权值数组中
计算一个区间的异或和可以通过异或前缀和预处理来$O(1)$计算
时间复杂度$O(n^2)$
C(虚树上bfs)
分析
假设我们当前询问中的关键点的lca是u,那么容易发现答案要求的那个点一定在u子树内(因为若在子树外一点x,那么十分容易证明u点比x点更优)
进一步分析,发现答案要求的那个点一定就是所有关键点中距离最远的两个点的路径中点
那么现在只需要求出关键点中最远的两个点的距离就行了
根据题目输入的范围,很明显需要求出虚树,然后就等价于在虚树上询问相距最远的两个点
也就是找这个虚树的直径,在虚树上两次bfs就行了
时间复杂度$O(n+\sum {|S_i|})$
D
待填坑
E(线性基)
分析
很神奇的题
我们可以把每个点周围相连的边边权都异或起来作为这个点的点权,那么如果两个相邻点点权相异或,那么它们相邻的那条边异或了两次,相当于没有异或,即不在割当中!
也就是说这n个点权,我们任取k个点点权将其异或,那么最终结果就表示一个割的方案!
那么问题就转换成了有n个数,这n个数异或出的不同结果的和是多少
先求出线性基,设秩为r
枚举每一位,看看是否有某个基该位是1,如果有1,那么这些基能异或出的2^r个数中,该位是1的一定有一半,所以该位的贡献就是$2^{r-1}*2^i$
结果long long就能存下,输出前9位唬人的
时间复杂度$O(32n)$
Wannafly挑战赛1的更多相关文章
- Wannafly挑战赛25游记
Wannafly挑战赛25游记 A - 因子 题目大意: 令\(x=n!(n\le10^{12})\),给定一大于\(1\)的正整数\(p(p\le10000)\)求一个\(k\)使得\(p^k|x\ ...
- Wannafly挑战赛27
Wannafly挑战赛27 我打的第一场$Wannafly$是第25场,$T2$竟然出了一个几何题?而且还把我好不容易升上绿的$Rating$又降回了蓝名...之后再不敢打$Wannafly$了. 由 ...
- Wannafly 挑战赛 19 参考题解
这一次的 Wannafly 挑战赛题目是我出的,除了第一题,剩余的题目好像对大部分算法竞赛者来说好像都不是特别友好,但是个人感觉题目质量还是过得去的,下面是题目链接以及题解. [题目链接] Wanna ...
- Wannafly挑战赛21A
题目链接 Wannafly挑战赛21A 题解 代码 #include <cstdio> #include <cmath> #define MAX 1000005 #define ...
- Wannafly挑战赛24游记
Wannafly挑战赛24游记 A - 石子游戏 题目大意: A和B两人玩游戏,总共有\(n(n\le10^4)\)堆石子,轮流进行一些操作,不能进行下去的人则输掉这局游戏.操作包含以下两种: 把石子 ...
- Wannafly挑战赛25C 期望操作数
Wannafly挑战赛25C 期望操作数 简单题啦 \(f[i]=\frac{\sum_{j<=i}f[j]}{i}+1\) \(f[i]=\frac{f[i]}{i}+\frac{\sum_{ ...
- Wannafly挑战赛18B 随机数
Wannafly挑战赛18B 随机数 设\(f_i\)表示生成\(i\)个数有奇数个1的概率. 那么显而易见的递推式:\(f_i=p(1-f_{i-1})+(1-p)f_{i-1}=(1-2p)f_{ ...
- Wannafly挑战赛22游记
Wannafly挑战赛22游记 幸运的人都是相似的,不幸的人各有各的不幸. --题记 A-计数器 题目大意: 有一个计数器,计数器的初始值为\(0\),每次操作你可以把计数器的值加上\(a_1,a_2 ...
- 【Wannafly挑战赛4】F 线路规划 倍增+Kruskal+归并
[Wannafly挑战赛4]F 线路规划 题目描述 Q国的监察院是一个神秘的组织.这个组织掌握了整个帝国的地下力量,监察着Q国的每一个人.监察院一共有N个成员,每一个成员都有且仅有1个直接上司,而他只 ...
- Wannafly挑战赛18 E 极差(线段树、单调栈)
Wannafly挑战赛18 E 极差 题意 给出三个长度为n的正整数序列,一个区间[L,R]的价值定义为:三个序列中,这个区间的极差(最大值与最小值之差)的乘积. 求所有区间的价值之和.答案对\(2^ ...
随机推荐
- 【HEVC帧间预测论文】P1.2 An Efficient Inter Mode Decision Approach for H.264 Video Codin
参考:An Efficient Inter Mode Decision Approach for H.264 Video Coding <HEVC标准介绍.HEVC帧间预测论文笔记>系列博 ...
- PHP一句话后门过狗姿势万千之传输层加工
既然木马已就绪,那么想要利用木马,必然有一个数据传输的过程,数据提交是必须的,数据返回一般也会有的,除非执行特殊命令. 当我们用普通菜刀连接后门时,数据时如何提交的,狗狗又是如何识别的,下面结合一个实 ...
- leetcode_268.missing number
给定一个数组nums,其中包含0--n中的n个数,找到数组中没有出现的那个数. 解法一:cyclic swapping algorithm class Solution { public: int m ...
- CentOS 6.5下安装Python 3.5.2(与Python2并存)
CentOS 6.5下安装Python 3.5.2(与Python2并存) 安装步骤 1,准备编译环境(环境不对,在安装过程中可能遇到各种问题.比如wget无法下载链接的文件) yum groupin ...
- Gradle dependencies 依赖方式
implementation:使用了该命令编译的依赖,仅仅对当前的Moudle提供接口 依赖首先应该设置为implement的,如果没有错,那就用implement,如果有错,那么使用api指令 那为 ...
- 完整卸载MySQL数据库
1. 关掉mysql服务 右键“我的电脑”,选择“管理”,打开计算机管理,选择“服务” 右键MySQL服务,选择“停止” 2. 卸载mysql程序 开始菜单->控制面板->程序和功能 3. ...
- 【转】解决WPF图片模糊最佳方法(绑定PixelWidth与PixelHeight)
解决WPF图片模糊最佳方法(绑定PixelWidth与PixelHeight) 转载自:http://www.360doc.com/content/13/1126/09/10504424_332211 ...
- luogu 1608 路径统计--最短路计数
https://www.luogu.org/problemnew/show/P1608 题意https://www.cnblogs.com/rmy020718/p/9440588.html相似,建议还 ...
- mysql踩坑
com.mysql.cj.core.exceptions.InvalidConnectionAttributeException: The server time zone value '****** ...
- ArchLinux 安装笔记
前言 在开始之前,请在心中默念三遍: Arch Linux 是世界上最好的发行版, 我一定能掌握她. 环境 VM ware + UEFI + 500G 虚拟磁盘 + 2G 内存 + 桥接网络 下载镜像 ...