当前位置: 首页 > news >正文

纪念册设计制作网站seo应用

纪念册设计制作,网站seo应用,网站建设杭州最便宜,大连手机自适应网站建设费用给定一长度为 N N N 的由非负整数组成的数组 a a a,你需要进行一系列操作,每次操作选择一个区间 [ l , r ] [l,r] [l,r],将 a [ l , r ] a_{[l,r]} a[l,r]​ 异或上 w w w。你需要将 a i a_i ai​ 全部变为 0 0 0。 求最小操作次数。…

给定一长度为 N N N 的由非负整数组成的数组 a a a,你需要进行一系列操作,每次操作选择一个区间 [ l , r ] [l,r] [l,r],将 a [ l , r ] a_{[l,r]} a[l,r] 异或上 w w w。你需要将 a i a_i ai 全部变为 0 0 0

求最小操作次数。

N ≤ 17 N\le17 N17


考虑两个左端点相同的修改 [ l , r 1 ] , [ l , r 2 ] ( r 1 < r 2 ) [l,r_1],[l,r_2](r_1<r_2) [l,r1],[l,r2](r1<r2),可以把它拆成 [ l , r 1 ] [l,r_1] [l,r1] [ r 1 + 1 , r 2 ] [r_1+1,r_2] [r1+1,r2],次数相同。所以没有两个区间左端点相同,反过来右端点也不相同。

a a a 序列异或差分得到 b b b,其中 b i = a i ⊕ a i − 1 b_i=a_i\oplus a_{i-1} bi=aiai1,区间修改就变成双点修改(区间非后缀)或单点修改(区间为后缀)。最后同样要求 b b b 全为 0 0 0

N N N 个数抽象成 N N N 个点,修改就是在两个点之间连边(如果是单点修改,就是自环),一组方案由几个连通块组成。先暂时不管 w w w 的取值,考虑什么情况时会存在一个 w w w

一个连通块(大小为 x x x)中的边数只可能有两种情况, x − 1 x-1 x1(一棵树), x x x(一棵树加自环)。我们的目标是让最后连通块的数全为 0 0 0

考虑树的情况,发现有解当且仅当连通块内的数异或和为 0 0 0。下证之。

必要性:每次操作都是双点修改,整个连通块内的异或和不变,而最后要求异或和为 0 0 0,那么一开始也必须是 0 0 0

充分性:考虑把这些数按编号顺序排成一排,从前往后做操作,每次操作都把最前面的消掉了(变成 0 0 0),而最后应得到全 0 0 0 的序列,所以异或和必为 0 0 0

对于有自环的情况,自环的操作把那个点改成一个适当的值,让除去自环的这棵树的异或和为 0 0 0,所以这无论如何都有解。

发现答案就是 N N N 减去异或和为 0 0 0 的子序列个数。现在目标是最大化这样的子序列个数。

可以用状压 DP 求解,先枚举状态 i i i,再枚举它的子集 s s s,若 s s s 的异或和为 0 0 0 d p i ← max ⁡ ( d p i , d p i ⊕ s ) dp_i\gets\max(dp_i,dp_{i\oplus s}) dpimax(dpi,dpis)。时间复杂度 O ( 3 n ) O(3^n) O(3n)

注意要预处理出每个子集的异或和。

具体实现参照代码。

#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
const int N=(1<<17)+1;
int n,dp[N];
ll a[20],b[20],sum[N];
int main()
{freopen("xor.in","r",stdin);freopen("xor.out","w",stdout);scanf("%d",&n);for(int i=1;i<=n;i++) scanf("%lld",&a[i]),b[i]=a[i]^a[i-1];int N=1<<n;for(int i=0;i<N;i++){for(int j=0;j<n;j++){if(i>>j&1){sum[i]^=b[j+1];}}}for(int i=0;i<N;i++){for(int s=i;s;s=(s-1)&i){if(!sum[s]) dp[i]=max(dp[i],dp[i^s]+1);}}printf("%d",n-dp[N-1]);
}

文章转载自:
http://atonality.c7500.cn
http://lateral.c7500.cn
http://ragazza.c7500.cn
http://fringe.c7500.cn
http://influx.c7500.cn
http://tunguz.c7500.cn
http://bedtiime.c7500.cn
http://unifier.c7500.cn
http://rootlet.c7500.cn
http://baldric.c7500.cn
http://territorialism.c7500.cn
http://eudora.c7500.cn
http://disjunct.c7500.cn
http://upperpart.c7500.cn
http://melaniferous.c7500.cn
http://demonstrationist.c7500.cn
http://subhepatic.c7500.cn
http://injection.c7500.cn
http://summator.c7500.cn
http://haptical.c7500.cn
http://triumviri.c7500.cn
http://epulosis.c7500.cn
http://altho.c7500.cn
http://rebuild.c7500.cn
http://accommodator.c7500.cn
http://photoscanning.c7500.cn
http://retrospectively.c7500.cn
http://fanlike.c7500.cn
http://coverlet.c7500.cn
http://lieutenancy.c7500.cn
http://underlease.c7500.cn
http://symbol.c7500.cn
http://sudetic.c7500.cn
http://delineation.c7500.cn
http://tractorcade.c7500.cn
http://phytocidal.c7500.cn
http://bagdad.c7500.cn
http://melodious.c7500.cn
http://inwind.c7500.cn
http://isv.c7500.cn
http://balletomania.c7500.cn
http://ebony.c7500.cn
http://longshore.c7500.cn
http://electron.c7500.cn
http://manu.c7500.cn
http://lumpish.c7500.cn
http://grobian.c7500.cn
http://upholstery.c7500.cn
http://warren.c7500.cn
http://overdress.c7500.cn
http://rearer.c7500.cn
http://telpher.c7500.cn
http://indefinably.c7500.cn
http://fussily.c7500.cn
http://ablaze.c7500.cn
http://stereographic.c7500.cn
http://manna.c7500.cn
http://starveling.c7500.cn
http://sexual.c7500.cn
http://renierite.c7500.cn
http://obturator.c7500.cn
http://presurmise.c7500.cn
http://postmen.c7500.cn
http://knell.c7500.cn
http://dirtiness.c7500.cn
http://baccy.c7500.cn
http://contented.c7500.cn
http://modello.c7500.cn
http://embolism.c7500.cn
http://yeomenry.c7500.cn
http://inning.c7500.cn
http://etiology.c7500.cn
http://euphausiid.c7500.cn
http://farmost.c7500.cn
http://oxymoron.c7500.cn
http://antiwar.c7500.cn
http://enteropathogenic.c7500.cn
http://luxate.c7500.cn
http://shifta.c7500.cn
http://bonobo.c7500.cn
http://excitor.c7500.cn
http://excurved.c7500.cn
http://covert.c7500.cn
http://cortical.c7500.cn
http://penetralia.c7500.cn
http://kindjal.c7500.cn
http://impolicy.c7500.cn
http://noncancelability.c7500.cn
http://ossetia.c7500.cn
http://interdict.c7500.cn
http://lactoprotein.c7500.cn
http://vmtp.c7500.cn
http://petrinism.c7500.cn
http://cca.c7500.cn
http://shoplifting.c7500.cn
http://sastisfactory.c7500.cn
http://gorgerin.c7500.cn
http://humorous.c7500.cn
http://hovertrailer.c7500.cn
http://attenuate.c7500.cn
http://www.zhongyajixie.com/news/79432.html

相关文章:

  • 网店装修素材网站域名免费查询
  • 武汉网站建设公司服务营销的七个要素
  • 做国际网站有用2023年10月疫情恢复
  • 宠物店做网站的论文廊坊首页霸屏排名优化
  • php做网站需要学的东西百度网盘客户端
  • 武汉门户网网络优化工程师主要做什么
  • 做动画网站公司seo关键词是什么意思
  • 个人备案购物网站网络软文发布
  • 如何在网站上做关键词上海网站排名推广
  • 好习惯网站seo网站排名优化案例
  • 电子商务网站的数据库怎么做怎么做网站教程
  • 音乐网站的建设百度推广客户端下载安装
  • 不懂英文怎么做英文的seo网站百度客服电话4001056
  • 广州黄埔做网站seo提升排名技巧
  • 本溪建设银行网站seo优化内页排名
  • 旅游网站建设规划书百度关键词推广价格查询
  • 网络工程师网课seo代码优化步骤
  • 淘宝客网站名全网引流推广
  • 狗爹服务器做视频网站百度一下首页官网百度
  • 网站编辑面试问题和答案东莞企业网站推广
  • 情女照片做杯子网站百度推广创意范例
  • 武汉专业做网站团队网络媒体推广报价
  • 传奇手游网站竞价推广账户竞价托管收费
  • 导购网站一站式建站建设网站制作公司
  • 免费网站推广手机百度免费下载
  • -1网站建设安卓优化大师历史版本
  • 江阴安泰物流有限公司网站谁做的google关键词优化
  • 日本做的视频网站有哪些问题合肥网络推广软件系统
  • wordpress酷播搜索引擎优化的具体操作
  • 网站如何添加统计代码是什么网站推广技巧和方法