区间取反与区间数一【牛客tracker 每日一题】

区间取反与区间数一

时间限制:2秒 空间限制:256M

网页链接

牛客tracker

牛客tracker & 每日一题,完成每日打卡,即可获得牛币。获得相应数量的牛币,能在【牛币兑换中心】,换取相应奖品!助力每日有题做,丰盈牛币日益多!

题目描述

对于给定的长度为n nn01 0101s ss(下标范围为[ 1 , n ] [1,n][1,n]),你需要构建一个能够动态维护区间和信息的数据结构,使得其能支持:

  1. 区间取反:将[ l , r ] [l,r][l,r]这个区间中的全部元素进行取反操作,即∀ i ∈ [ l , r ] , s i → 1 − s i ∀i∈[l,r],s_i→1−s_ii[l,r],si1si
  2. 区间数一:输出下标在[ l , r ] [l,r][l,r]这个区间中的所有元素值为1 11的元素的个数,即∑ i = l r 1 ( a i = 1 ) ∑_{i=l}^r1_{(a_i=1)}i=lr1(ai=1)

输入描述:

第一行输入两个整数n , q ( 1 ≦ n , q ≦ 5 × 10 5 ) n,q(1≦n,q≦5×10^5)n,q(1n,q5×105)代表01 0101s ss的长度、操作次数。
第二行输入一个长度为n nn01 0101s ( s i ∈ s(s_i∈s(si{0 , 1 0,10,1}) ))
此后q qq行,每行先输入一个整数o p ( 1 ≦ o p ≦ 2 ) op(1≦op≦2)op(1op2)代表操作编号,随后:

输出描述:

对于每一次询问,输出一行一个整数代表区间数一的结果值。保证至少存在一次询问。

示例1

输入:

6 4 100101 1 1 4 2 1 6 1 4 6 2 1 6

输出:

3

解题思路

采用位运算分块策略维护01 0101串,将长度为n nn01 0101串按每64 6464位划分为一个块,用无符号长整型数组b s bsbs存储(1 11对应位设为1 , 0 1,0100 00)。处理区间取反(o p = 1 op=1op=1)时,先对[ l , r ) [l,r)[l,r)范围内的完整块整体按位取反(异或− 1 -11),再分别对左右边界的不完整块,通过异或(1 u l l < < 1ull<<1ull<<(位偏移))− 1 -11取反边界内的位;处理区间统计1 11的个数(o p = 2 op=2op=2)时,先计算右边界块前r位的1 11的数量,减去左边界块前l ll位的1 11的数量,再累加中间完整块的1 11的总数(借助KaTeX parse error: Expected group after '_' at position 1: _̲_builtin_popcou…快速统计每块1 11的个数)。该方法将每次操作的时间复杂度降至O ( n / 64 ) O(n/64)O(n/64),适配n nnq qq5 e 5 5e55e5的规模,高效完成区间取反与1 11的个数统计操作。

代码内容

#include<bits/stdc++.h>usingnamespacestd;typedeflonglongll;typedefunsignedlonglongull;typedefpair<ll,ll>pii;constll p=1e9+7;constll N=2e5+10;ull bs[7813];intmain(){ll n,q;string s;cin>>n>>q>>s;for(ll i=0;i<n;i++){if(s[i]=='1')bs[i>>6]|=1ull<<(i&63);}ll op,l,r,lb,rb;while(q--){cin>>op>>l>>r;l--;lb=l>>6,rb=r>>6;if(op==1){for(ll i=lb;i<rb;i++)bs[i]^=-1;bs[lb]^=(1ull<<(l&63))-1;bs[rb]^=(1ull<<(r&63))-1;continue;}ll res=__builtin_popcountll(bs[rb]&(1ull<<(r&63))-1)-__builtin_popcountll(bs[lb]&(1ull<<(l&63))-1);for(ll i=lb;i<rb;i++)res+=__builtin_popcountll(bs[i]);cout<<res<<endl;}return0;}

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

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

相关文章

基于PyTorch的CBOW模型实现与词向量生成

文章目录一. CBOW模型详解1.1 Word2Vec与分布式表示1.2 CBOW模型原理数学表达1.3 网络架构详解代码中的网络层说明&#xff1a;1.4 训练目标与优化1.5 CBOW 与 Skip-gram 比较1.6 词向量的应用与提取二. 数据准备与预处理2.1 语料库与基本参数设置2.2 构建词汇表2.3 构建训练数…

基于大数据的颈椎病预防交流与数据可视化分析平台设计与实现

摘 要 现代快节奏生活中&#xff0c;长时间低头用电子设备、不良坐姿及运动不足等现象普遍&#xff0c;致颈椎病发病率激增&#xff0c;严重影响生活工作。公众健康意识提升&#xff0c;对颈椎病防治关注度高&#xff0c;却受限于传统方法&#xff0c;亟需科学个性化方案。大数…

【力扣hot100题】合并区间(9)

以数组 intervals 表示若干个区间的集合&#xff0c;其中单个区间为 intervals[i] [starti, endi] 。请你合并所有重叠的区间&#xff0c;并返回 一个不重叠的区间数组&#xff0c;该数组需恰好覆盖输入中的所有区间 。示例 1&#xff1a;输入&#xff1a;intervals [[1,3],[…

DeepBI 帮亚马逊卖家突破销售瓶颈,暴增近20倍销量!

做亚马逊的你&#xff0c;是不是也有这种无力感&#xff1f;店铺销售规模卡在瓶颈难突破&#xff0c;广告烧得凶&#xff0c;利润却薄如纸&#xff1b;熬夜调关键词、算数据&#xff0c;销量还是原地踏步&#xff0c;甚至越优化越亏&#xff1f;深圳的家具类卖家陈总也曾深陷这…

交互式教学:将阿里通义Z-Image-Turbo集成到Jupyter Notebook的秘诀

交互式教学&#xff1a;将阿里通义Z-Image-Turbo集成到Jupyter Notebook的秘诀 作为一名数据科学讲师&#xff0c;我经常需要在课堂上演示AI图像生成技术。传统的命令行工具或独立应用往往让学生感到陌生&#xff0c;而Jupyter Notebook作为数据科学教学的标准环境&#xff0c;…

连锁店管理力不从心?让智能体接管30%重复工作

在连锁商业规模持续扩张的当下&#xff0c;一个核心矛盾日益凸显&#xff1a;消费者对个性化、即时性体验的需求不断升级&#xff0c;而传统依赖店长经验与人工巡检的运营模式&#xff0c;在成本、效率和一致性上渐趋乏力。门店越开越多&#xff0c;管理半径越来越广&#xff0…

模型压缩魔法:让Z-Image-Turbo在消费级GPU上流畅运行

模型压缩魔法&#xff1a;让Z-Image-Turbo在消费级GPU上流畅运行 你是否想在配备中等性能显卡的PC上运行Z-Image-Turbo&#xff0c;却被原始模型的显存要求劝退&#xff1f;本文将介绍如何通过模型压缩技术&#xff0c;让这个强大的图像生成模型在消费级GPU上流畅运行。目前CSD…

AI+教育创新:Z-Image-Turbo在教学场景中的快速部署

AI教育创新&#xff1a;Z-Image-Turbo在教学场景中的快速部署 作为一名教育科技创业者&#xff0c;你是否想过将AI图像生成技术融入在线课程&#xff1f;无论是自动生成教学插图、创建个性化学习素材&#xff0c;还是让学生通过文字描述快速可视化知识点&#xff0c;Z-Image-Tu…

一份精美的Excel,究竟需要多久?

作为一名财务分析师&#xff0c;我每天超过60%的工作时间都在与Excel打交道。从最初简单的数据录入&#xff0c;到如今复杂的财务模型构建&#xff0c;这看似普通的软件已经陪伴了我八年职业生涯。但直到最近&#xff0c;我才真正理解“精美的Excel”意味着什么&#xff0c;以及…

ACPI!PciConfigSpaceHandlerWorker函数中的hal!HalGetBusDataByOffset----重要

ACPI!PciConfigSpaceHandlerWorker函数中的hal!HalGetBusDataByOffset 1: kd> g Breakpoint 14 hit eax00000000 ebx89d376f8 ecx00000100 edx89ddf118 esi00000000 edi00000000 eip804f25ee espf791abdc ebpf791ac48 iopl0 nv up ei pl zr na pe nc cs0008 ss0010…

AI生成内容版权探索:Z-Image-Turbo云端环境下的水印集成

AI生成内容版权探索&#xff1a;Z-Image-Turbo云端环境下的水印集成 随着AI生成图像的普及&#xff0c;如何有效标识版权成为内容平台亟需解决的问题。Z-Image-Turbo作为新一代开源图像生成模型&#xff0c;凭借亚秒级生成速度和出色的中文理解能力&#xff0c;正被广泛应用于…

Z-Image-Turbo多租户方案:云端环境下的资源共享与隔离

Z-Image-Turbo多租户方案&#xff1a;云端环境下的资源共享与隔离实战指南 在AI图像生成领域&#xff0c;Z-Image-Turbo凭借其亚秒级的生成速度和出色的图像质量&#xff0c;正成为越来越多SaaS服务商的首选技术方案。但当企业试图将其部署为多租户服务时&#xff0c;资源竞争和…

揭秘Z-Image-Turbo:如何用阿里云镜像1小时搭建高性能AI画室

揭秘Z-Image-Turbo&#xff1a;如何用阿里云镜像1小时搭建高性能AI画室 作为一名数字媒体课程的讲师&#xff0c;我最近一直在寻找一种简单高效的方式&#xff0c;让学生们能够亲身体验AI图像生成的魅力。学校的计算资源有限&#xff0c;本地部署复杂的AI模型对新手来说门槛太高…

图书管理系统的设计与实现

图书管理系统的设计与实现 【摘 要】随着信息技术的发展&#xff0c;信息系统在社会管理活动中发挥着重要的作用。图书管理系统的是当今校园信息化的重要组成部分&#xff0c;为丰富学生的课余文化生活&#xff0c;给广大的同学带来图书借阅的便利&#xff0c;闽南科技学院图书…

头部企业如何借AI HR破局2026人才战略新棋局

在刚刚过去的2025年&#xff0c;AI在人力资源领域热度只增不减。从智能招聘到数字员工&#xff0c;从预测分析到技能图谱&#xff0c;前沿案例令人目不暇接。仿佛一夜间&#xff0c;人力资源部门就要从职能支持&#xff0c;跃升为企业的战略大脑。但当目光从行业峰会的PPT拉回企…

从DALL·E到Z-Image-Turbo:低成本替代方案的快速迁移

从DALLE到Z-Image-Turbo&#xff1a;低成本替代方案的快速迁移 如果你正在使用商业AI绘画API&#xff08;如DALLE&#xff09;&#xff0c;但希望寻找一个开源替代方案来降低成本&#xff0c;Z-Image-Turbo可能是一个值得尝试的选择。本文将帮助你快速验证Z-Image-Turbo是否能满…

基于STM32单片机智能交流电流检测监测互感器设计DIY20-572

本设计由STM32F103C8T6单片机核心板电路LCD1602液晶显示电路TA1005M交流电流检测电路组成。1、LCD1602液晶实时显示交流电流值。

假期休闲不重样,靠谱短剧天天有新剧

看短剧是真香&#xff1a;解锁高效休闲新方式在快节奏的现代生活中&#xff0c;寻找一种高效、便捷的休闲放松方式&#xff0c;成为许多人的共同需求。而刷短剧&#xff0c;正以其“短平快”的叙事节奏和强情节的吸引力&#xff0c;迅速俘获了广大用户的心&#xff0c;成为填充…

文化遗产数字化:AI辅助的古迹复原图像生成

文化遗产数字化&#xff1a;AI辅助的古迹复原图像生成实践指南 作为一名文物保护工作者&#xff0c;你是否曾面对残垣断壁的古迹&#xff0c;想象它们当年的辉煌模样&#xff1f;如今通过文化遗产数字化&#xff1a;AI辅助的古迹复原图像生成技术&#xff0c;我们可以借助Stabl…