CF1054D-Changing Array【贪心】

正题

题目链接:https://www.luogu.com.cn/problem/CF1054D


题目大意

一个长度为nnn的序列,每个数小于2k2^k2k,可以选择一些数xorxorxor2k−12^k-12k1。要求使得满足alxoral+1xor...xorar=0a_l\ xor\ a_{l+1}\ xor...xor\ a_r=0al xor al+1 xor...xor ar=0的区间个数最少。


解题思路

首先做前缀xorxorxor,这样就变成了al−1xorar=0a_{l-1}\ xor\ a_r=0al1 xor ar=0的数量最少,也就算相同的对数最少。
axor(2k−1)=ba\ xor\ (2^k-1)=ba xor (2k1)=b或者a=ba=ba=b我们将它们视为同一类,它们可以相互转换,对于每一类我们一半取大的,一半取小的即可。

时间复杂度O(nlog⁡n)O(n\log n)O(nlogn)


codecodecode

#include<cstdio>
#include<cstring>
#include<algorithm>
#include<map>
using namespace std;
const int N=2e5+10;
int n,k,a[N];long long ans;
map<int,int> v;
long long p(int x)
{return 1ll*x*(x-1)/2;}
int main()
{scanf("%d%d",&n,&k);int ms=(1<<k)-1;v[0]++;for(int i=1;i<=n;i++){scanf("%d",&a[i]);a[i]^=a[i-1];if(ms-a[i]>a[i])v[a[i]]++;else v[ms-a[i]]++;}map<int,int>::iterator it=v.begin();ans=1ll*n*(n+1)/2;for(;it!=v.end();it++){int x=it->second;ans-=p(x/2)+p(x-x/2);}printf("%lld\n",ans);return 0;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/320044.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ElasticSearch入门 附.Net Core例子

1.什么是ElasticSearch?Elasticsearch是基于Lucene的搜索引擎。它提供了一个分布式&#xff0c;支持多租户的全文搜索引擎&#xff0c;它具有HTTP Web界面和无模式JSON文档。 Elasticsearch是用Java开发的&#xff0c;根据Apache许可条款作为开源发布。----来自维基百科的解释…

[XSY]Tree Ext(矩阵树定理,拉格朗日插值,最小生成树,二分)

Tree Ext 这道题相当于把3道题合了起来。 要求修复的边中恰好有 k 条白边&#xff1a; 五颜六色的幻想乡(附拉格朗日插值法求多项式系数 ) bzoj2654 tree(WQS二分 新科技get) 是最小生成树计数而非生成树计数&#xff1a; BZOJ1016」[JSOI2008] 最小生成树计数 具体可以看看…

【期望】乘坐电梯(金牌导航 期望-2)

乘坐电梯 金牌导航 期望-2 题目大意 有n个人&#xff0c;对于没一个单位时间有p的概率最前面的1个人进电梯&#xff0c;有&#xff08;1-p&#xff09;的概率不进&#xff0c;问你t个单位时间后&#xff0c;电梯中的期望人数 样例输入 1 1 0.50 1 样例输出 1 0.5 样例输入…

动态规划练习【一】 背包问题

详细讲解 背包问题大汇总 文章目录背包问题大汇总01背包问题&#xff1a;思路&#xff1a;空间优化复杂度代码总结&#xff1a;完全背包问题&#xff1a;思路&#xff1a;代码&#xff1a;优化多重背包问题&#xff1a;思路&#xff1a;代码&#xff1a;单调队列优化混合三种背…

P3329-[ZJOI2011]最小割【最小割树】

正题 题目链接:https://www.luogu.com.cn/problem/P3329 题目大意 nnn个点mmm条边的无向图&#xff0c;每次询问一个xxx表示最小割不超过xxx的点对数量。 解题思路 我们对于两个点sss到ttt完成网络流后的残量网络上&#xff0c;与sss联通的点属于点集SSS&#xff0c;与ttt联通…

《.NET 性能优化》送书活动结果公布

截止到9月7日18&#xff1a;00&#xff08;规则本是12&#xff1a;00&#xff0c;忙的忘记了这事&#xff0c;18点截的图&#xff09;&#xff0c;本次送书活动《.NET 性能优化》共收到100多位同学参与回复&#xff0c;本次很多同学在看到活动的书 &#xff0c;自行就到异步社区…

【期望】期望收益(金牌导航 期望-3)

期望收益 金牌导航 期望-3 题目大意 给你一个01串&#xff0c;有些位置是未知的&#xff0c;连续的x个1贡献为想x2x^2x2&#xff0c;现在问你该串的期望贡献 输入样例 4 ????输出样例 4.1250数据范围 1⩽n⩽31051\leqslant n \leqslant 3\times 10^51⩽n⩽3105 解题…

杜教筛技巧随记

常见完全积性函数&#xff1a; ϵ(n)[n1]ϵ(n)[n1]ϵ(n)[n1]&#xff08;元函数&#xff0c;满足f∗ϵff*ϵff∗ϵf&#xff09; I(n)1I(n)1I(n)1 id(n)nid(n)nid(n)n 常见卷积&#xff1a; μ∗Iϵ\mu* Iϵμ∗Iϵ ϕ∗Iid\phi*Iidϕ∗Iid f(n)∑i1niϕ(i)f(n)\sum_{i1}^{n}i…

hdu-2844 Coins (混合背包+二进制优化)

HDU链接 文章目录题目描述&#xff1a;题意&#xff1a;题解&#xff08;代码&#xff09;题目描述&#xff1a; 输入描述: 输出描述: For each test case output the answer on a single line. 输入 3 10 1 2 4 2 1 1 2 5 1 4 2 1 0 0输出 8 4题意&#xff1a; 有n种硬币&…

CF1451F-Nullify The Matrix【结论题,博弈论】

正题 题目链接:https://www.luogu.com.cn/problem/CF1451F 题目大意 n∗mn*mn∗m的网格&#xff0c;每个网格上有数字&#xff0c;先后手轮流操作 每次操作选择一个只有往右和往下的路径&#xff0c;让第一个格子减去一个正整数并且随意修改后面的格子。要求完成后所有格子非…

.NET Core WebApi中实现多态数据绑定

什么是多态数据绑定&#xff1f;我们都知道在ASP.NET Core WebApi中数据绑定机制&#xff08;Data Binding&#xff09;负责绑定请求参数&#xff0c; 通常情况下大部分的数据绑定都能在默认的数据绑定器&#xff08;Binder&#xff09;中正常的进行&#xff0c;但是也会出现少…

【期望】期望分数(金牌导航 期望-4)

期望分数 金牌导航 期望-4 题目大意 告诉你一个01串中每个位置是1的概率&#xff0c;对于连续的x个1&#xff0c;贡献为x3x^3x3&#xff0c;问你期望贡献是多少 输入样例 3 0.5 0.5 0.5输入样例 6.0数据范围 1⩽N⩽1051\leqslant N \leqslant 10^51⩽N⩽105 解题思路…

[51NOD1847]奇怪的数学题(杜教筛+min_25筛+第二类斯特林数)

f(x)f(x)f(x)表示xxx的次大约数&#xff0c;有f(x)xx的最小质因数f(x)\frac{x}{x的最小质因数}f(x)x的最小质因数x​&#xff0c;那么 ∑i1n∑j1nsgcd(i,j)k∑i1n∑j1nf(gcd(i,j))k∑d1nf(d)k∑i1n∑j1n[gcd(i,j)d]∑d1nf(d)k∑i1⌊nd⌋∑j1⌊nd⌋[gcd(i,j)1]∑d1nf(d)k⋅(2∑i…

hdu 1059 Dividing

Hdu链接 文章目录题目描述题意&#xff1a;题解&#xff1a;代码&#xff1a;题目描述 输入描述: 输出描述: 示例1 输入 1 0 1 2 0 0 1 0 0 0 1 1 0 0 0 0 0 0输出 Collection #1: Cant be divided.Collection #2: Can be divided.题意&#xff1a; 有价值分别是1~6的6种…

UOJ#284-快乐游戏鸡【长链剖分,线段树】

正题 题目链接:https://uoj.ac/problem/284 题目大意 nnn个点的一棵树&#xff0c;每个点有一个wiw_iwi​表示至少死亡wiw_iwi​次才能通过这个点&#xff0c;否则就会死亡。只能往子节点走&#xff0c;mmm此询问从sis_isi​走到tit_iti​至少要死多少次。 解题思路 也就算我…

【期望】彩色圆环(金牌导航 期望-5)

彩色圆环 金牌导航 期望-5 题目大意 给你一个环&#xff0c;每个位置的数字等概率为1~m中的其中一个&#xff0c;对于连续的相同数字的串&#xff0c;记其长度为aia_iai​&#xff0c;求aia_iai​的积的期望值 输入样例 8 1输出样例 8.00000数据范围 1⩽N⩽200,1⩽M⩽109…

概率与期望技巧随记

1.已知某事件发生的概率为ppp&#xff0c;则要让该事件发生所需的试验次数期望值为1p\frac{1}{p}p1​ 证明&#xff1a;Exp1(1−p)(Ex1)E_xp\times 1(1-p)\times(E_x1)Ex​p1(1−p)(Ex​1) 易解得Ex1pE_x\frac{1}{p}Ex​p1​

P2597-[ZJOI2012]灾难【DAG支配树】

正题 题目链接:https://www.luogu.com.cn/problem/P2597 题目大意 nnn个点的一张DAGDAGDAG&#xff0c;对于每个点xxx求有多少点yyy满足从yyy出发到达某个出度为000的所有路径都必须经过xxx。 解题思路 首先建立一张反图&#xff0c;然后一个超级源点连向所有入度为000的节点…

hdu-1171 Big Event in HDU

hdu试题链接 文章目录Problem Description题意&#xff1a;题解&#xff1a;代码&#xff1a;Problem Description Nowadays, we all know that Computer College is the biggest department in HDU. But, maybe you don’t know that Computer College had ever been split in…

.Net Core应用框架Util介绍(二)

Util的开源地址https://github.com/dotnetcore/utilUtil的开源协议Util以MIT协议开源&#xff0c;这是目前最宽松的开源协议&#xff0c;你不仅可以用于商业项目&#xff0c;还能把Util的代码放进你的框架&#xff0c;放心使用。Util的命名Util这个名字看上去不怎么高大上&…