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

东莞市新闻整站优化关键词推广

东莞市新闻,整站优化关键词推广,做直播网站视频教程,做销售的如何在网站题目链接 CF方向 Luogu方向 题目解法 看到区间异或,一个经典的套路是做差分,我们即在 l l l 处异或一次,在 r 1 r1 r1 处异或一次,然后前缀和起来 于是我们可以将问题转化成:有一个序列初始全 0 0 0&#xff0c…

题目链接

CF方向
Luogu方向

题目解法

看到区间异或,一个经典的套路是做差分,我们即在 l l l 处异或一次,在 r + 1 r+1 r+1 处异或一次,然后前缀和起来
于是我们可以将问题转化成:有一个序列初始全 0 0 0,每次可以把相隔 a i a_i ai 的数都 ⊕ 1 \oplus 1 1,求最少将其变成一个状态的步数
考虑 k k k 的范围很小,所以为 1 1 1 的地方一共只有 2 k 2k 2k
这里有一个非常重要的 t r i c k trick trick:在异或操作中,如果需要把 x , y x,y x,y 同时异或 1 1 1,其他不变,每次可以同时修改相隔 a i a_i ai 的位置的异或值,那么这个问题等价于建出图来从 x x x y y y 的最短路
然后发现直接状压跑最短路即可,时间复杂度 O ( 2 k k 2 ) O(2^kk^2) O(2kk2)
不难优化成 O ( 2 k k ) O(2^kk) O(2kk),但我直接 998 m s 998ms 998ms O ( 2 k k 2 ) O(2^kk^2) O(2kk2) 的做法艹过去了,就懒得改了
O ( 2 k k 2 ) O(2^kk^2) O(2kk2) 的代码:

#include <bits/stdc++.h>
using namespace std;
const int N=10100,M=2000100;
int n,m,k,a[110],x[30],dis[N];
int f[(1<<20)+100],D[30][30];
int e[M],ne[M],h[N],idx;
inline int read(){int FF=0,RR=1;char ch=getchar();for(;!isdigit(ch);ch=getchar()) if(ch=='-') RR=-1;for(;isdigit(ch);ch=getchar()) FF=(FF<<1)+(FF<<3)+ch-48;return FF*RR;
}
queue<int> que;
void bfs(int S){memset(dis,0x3f,sizeof(dis));que.push(S),dis[S]=0;while(!que.empty()){int u=que.front();que.pop();for(int i=h[u];~i;i=ne[i]) if(dis[u]+1<dis[e[i]])dis[e[i]]=dis[u]+1,que.push(e[i]);}
}
void add(int x,int y){ e[idx]=y,ne[idx]=h[x],h[x]=idx++;}
int main(){n=read(),k=read(),m=read();for(int i=0;i<k;i++) x[i]=read();for(int i=1;i<=m;i++) a[i]=read();for(int i=0;i<k;i++) x[i+k]=x[i]+1;memset(h,-1,sizeof(h));for(int i=1;i<=m;i++)for(int j=1;j<=n-a[i]+1;j++)add(j,j+a[i]),add(j+a[i],j);for(int i=0;i<k<<1;i++){bfs(x[i]);for(int j=0;j<k<<1;j++) D[i][j]=dis[x[j]];}memset(f,0x3f,sizeof(f));f[0]=0;for(int S=0;S<1<<(k<<1);S++)for(int i=0;i<k<<1;i++) if(S>>i&1)for(int j=0;j<k<<1;j++) if(S>>j&1) if(i!=j)f[S]=min(f[S],f[S^(1<<i)^(1<<j)]+D[i][j]);printf("%d\n",f[(1<<(k<<1))-1]>1e9?-1:f[(1<<(k<<1))-1]);fprintf(stderr,"%d ms\n",int(1e3*clock()/CLOCKS_PER_SEC));return 0;
}
http://www.khdw.cn/news/44056.html

相关文章:

  • b2c网站的模式宁波网站推广方式
  • 襄阳宜城网站建设自媒体平台注册入口官网
  • 提供网站建设备案公司热狗seo外包
  • 色一把做最好的网站网络营销推广方案步骤
  • 哪些网站适合用自适应公司网站推广方案
  • 网站全屏弹出窗口宁德市古田县
  • 和网站建设签合同百度一下网页
  • html5模板之家专业seo站长工具全面查询网站
  • 网站关键词设置代码今日热点新闻事件摘抄
  • 电商 网站建设文字百度快速排名软件下载
  • 合肥网站优化seo谷歌seo服务
  • wordpress自定义页面跳转济南网站seo哪家公司好
  • 学前教育网站建设爱站在线关键词挖掘
  • 什么是网站的自适应中国突然宣布一重磅消息
  • 工商注册深圳关键词优化推广排名
  • 小学生做创客大赛网站的题新闻发稿软文推广
  • 游戏发号网站源码seo站内优化和站外优化
  • 建设网站的 域名申请的分析南宁seo公司
  • 有教做翻糖的网站吗内蒙古网站seo
  • 柳州做网站人员长春网络优化哪个公司在做
  • 做英文网站哪里好常宁seo外包
  • 备案期间怎么做网站如何给企业做网络推广
  • 本地建站工具运营推广的方式和渠道有哪些
  • 做游戏 网站济宁做网站的电话
  • 做网站的运营维护都要学什么目前较好的crm系统
  • 长沙可以做网站的公司宁波超值关键词优化
  • php做的网站好么专业网站建设公司
  • wordpress的图片插件企业网站seo方案
  • 网站建设受众it培训课程
  • wordpress分只显示标题百度seo关键词排名优化软件