news 2026/7/28 18:50:44

Graph Games

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Graph Games

牛客多校第三场
题目链接
给n个点m条边
两种操作1是反转l到r之间的边,把有边变成无边,把无边变成有边。
2是询问两个点所在的点集是否相同。

对边进行分块,我们首先得给每个点随即一个值,判断两个点是否在一个集合内,直接判断这个点和他相邻的点异或之后的两个值是否相同。首先我们先预处理出每个块中的每个点和他相连点的异或值,然后对于1操作,对于完整块我们直接用标记数组标记一下反转了偶数次还是奇数次,对于不完整的块直接暴力异或这个点相连的点,对于操作二 我们将每个块中预处理出来的这个点的值和这个点进行异或,如果标记数组是偶数次那么说明之前连着边现在还是连着,如果是奇数次那说明这个块中的边都没了那就不用进行异或。

#include<bits/stdc++.h>using namespace std;constintN=100000+10;constintM=200000+10;intlazy[5005];inta[M],b[M],L[5005],R[5005];intB[5005][N];intO[N];inttot=0;inthas[N],pos[M];voidupdate(intl,intr){intx=pos[l];inty=pos[r];if(y-x<2){for(inti=l;i<=r;i++){O[a[i]]^=has[b[i]];O[b[i]]^=has[a[i]];}return;}for(inti=l;i<=R[x];i++){O[a[i]]^=has[b[i]];O[b[i]]^=has[a[i]];}for(inti=L[y];i<=r;i++){O[a[i]]^=has[b[i]];O[b[i]]^=has[a[i]];}for(inti=x+1;i<=y-1;i++){lazy[i]^=1;}}intquery(intu,intv){intx=O[u],y=O[v];for(inti=1;i<=tot;i++){if(!lazy[i]){x^=B[i][u],y^=B[i][v];}}returnx==y?1:0;}intmain(){srand(time(0));for(inti=0;i<=100000;i++){has[i]=rand();}intt;scanf("%d",&t);while(t--){intn,m;scanf("%d%d",&n,&m);intblock=sqrt(m);for(inti=0;i<=n;i++)O[i]=0;for(inti=1;i<=m;i++){scanf("%d%d",&a[i],&b[i]);}tot=0;for(inti=1;i<=m;i+=block){L[++tot]=i;R[tot]=min(m,i+block-1);lazy[tot]=0;for(intj=1;j<=n;j++)B[tot][j]=0;for(intj=L[tot];j<=R[tot];j++){B[tot][a[j]]^=has[b[j]];B[tot][b[j]]^=has[a[j]];}}for(inti=1;i<=tot;i++){for(intj=L[i];j<=R[i];j++){pos[j]=i;}}intq;scanf("%d",&q);while(q--){intx,l,r;scanf("%d%d%d",&x,&l,&r);if(x==1){update(l,r);}else{cout<<query(l,r);}}cout<<endl;}}
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/28 18:49:57

JaDE-SVM时序预测:优化算法与Matlab实现

1. 项目概述&#xff1a;JaDE-SVM时序预测的核心价值时序预测在金融、气象、工业控制等领域具有广泛应用&#xff0c;但传统方法往往难以平衡模型的准确性和泛化能力。JaDE-SVM时序预测方案通过自适应权重差分进化算法&#xff08;JaDE&#xff09;优化支持向量机&#xff08;S…

作者头像 李华
网站建设 2026/7/28 18:49:20

第五章视频感知元素结构理论

第五章视频感知元素结构理论Video Perception Element Structure Theory作者&#xff1a;东塬一老翁技术支持&#xff1a;WSaiOS多模态智能技术研发工作室资料来源&#xff1a;wsaios.cn5.1 视频在视觉认知中的作用视频是视觉信息在时间维度上的连续表现形式。图片描述&#xf…

作者头像 李华
网站建设 2026/7/28 18:48:32

机器学习模型计算accuracy

一&#xff1a;分类问题 from sklearn.metrics import accuracy_score from sklearn.model_selection import train_test_splitX_train, X_test, y_train, y_test train_test_split(train_x, train_y, test_size0.33, random_state123) model.fit(X_train, y_train) x_pred …

作者头像 李华
网站建设 2026/7/28 18:47:08

编程 MD(d)、MT(d)编译选项的区别

1.各个选项代表的含义 编译选项 包含 静态链接的lib 说明 /MD _MT、_DLL MSVCRT.lib 多线程、Release、DLL版本的运行时库 ---只能用于Release版本 /MDd _DEBUG、_MT、_DLL MSVCRTD.lib 多线程、Debug、DLL版本的运行时库 ----只能用于Debug版本 /MT _MT LIBCM…

作者头像 李华
网站建设 2026/7/28 18:43:57

拒绝API套壳!可视化配置落地企业级业务AI智能体

当前企业AI落地普遍陷入“demo亮眼、上线崩盘”的困境&#xff0c;多数低代码平台仅靠外挂LLM API实现浅层AI能力&#xff0c;存在业务割裂、可控性差、无法深度适配政企合规场景等核心痛点。 一、行业真相&#xff1a;90%企业AI落地&#xff0c;都死在“伪智能化” 大模型商业…

作者头像 李华
网站建设 2026/7/28 18:42:52

数据投毒检测避坑:后门触发器的隐蔽性与检测盲点

数据投毒检测避坑&#xff1a;后门触发器的隐蔽性与检测盲点 一、当后门藏到看不见&#xff1a;投毒检测的乐观与失守 数据投毒是大模型供应链里隐蔽的风险。攻击者不必攻破训练流程&#xff0c;只要在训练数据里埋下少量带触发器的样本&#xff0c;就能让模型在特定输入下输出…

作者头像 李华